-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathdev_flash_extractor_linux.sh
More file actions
executable file
·117 lines (112 loc) · 2.8 KB
/
Copy pathdev_flash_extractor_linux.sh
File metadata and controls
executable file
·117 lines (112 loc) · 2.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
TOOLS="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
echo "Wargio's dev_flash & dev_flash3 extractor v0.4 (for Linux)"
echo ""
if [ $# -eq 2 ]; then
WORKPUP=$(readlink -f "$1")
WORKDIR=$(readlink -f "$2")
mkdir "$2" 2>/dev/null || sleep 0
cd "$2"
echo "Extracting PUP.."
$TOOLS/pupunpack "$WORKPUP" TMP >> logs.txt
rm -rf logs.txt
cd TMP
mkdir update_files
cd update_files
tar -xf ../update_files.tar
echo "Working now on dev_flash.."
echo "Renaming files.."
for a in `seq 0 9`; do
if [ -f dev_flash_00$a* ]; then
mv dev_flash_00$a* dev_flash_00$a.tar
fi
done
for a in `seq 10 30`; do
if [ -f dev_flash_0$a* ]; then
mv dev_flash_0$a* dev_flash_0$a.tar
fi
done
echo "Extracting SCE TARs.."
for a in `seq 0 9`; do
if [ -f dev_flash_00$a.tar ]; then
$TOOLS/unpkg dev_flash_00$a.tar dev_flash_00$a
fi
done
for a in `seq 10 30`; do
if [ -f dev_flash_0$a.tar ]; then
$TOOLS/unpkg dev_flash_0$a.tar dev_flash_0$a
fi
done
for a in `seq 0 9`; do
if [ -d dev_flash_00$a ]; then
mv dev_flash_00$a/content dev_flash_00$a/content.tar
fi
done
for a in `seq 10 30`; do
if [ -d dev_flash_0$a ]; then
mv dev_flash_0$a/content dev_flash_0$a/content.tar
fi
done
echo "Extracting TARs.."
for a in `seq 0 9`; do
if [ -d dev_flash_00$a ]; then
cd dev_flash_00$a
tar -xf ./content.tar
cd ..
fi
done
for a in `seq 10 30`; do
if [ -d dev_flash_0$a ]; then
cd dev_flash_0$a
tar -xf ./content.tar
cd ..
fi
done
echo "Merging files.."
mkdir dev_flash
for a in `seq 0 9`; do
if [ -d dev_flash_00$a ]; then
cp -rf -n dev_flash_00$a/dev_flash ./
fi
done
for a in `seq 10 30`; do
if [ -d dev_flash_0$a ]; then
cp -rf -n dev_flash_0$a/dev_flash ./
fi
done
echo "Deleting dev_flash working dirs.."
for a in `seq 0 9`; do
rm -rf dev_flash_00$a
done
for a in `seq 10 30`; do
rm -rf dev_flash_0$a
done
echo "Done.."
echo "dev_flash extracted.."
echo ""
HAS_DEV_FLASH3=$(ls dev_flash3* 2>/dev/null | head -n 1 || sleep 0)
if [ ! -z "$HAS_DEV_FLASH3" ]; then
echo "Working now on dev_flash3.."
echo "Renaming file.."
mv dev_flash3* dev_flash3.tar
echo "Extracting SCE TARs.."
$TOOLS/unpkg dev_flash3.tar dev_flash3_ex
echo "Renaming file again.."
mv dev_flash3_ex/content dev_flash3_ex/content.tar
echo "Extracting TARs.."
tar -xf ./dev_flash3_ex/content.tar
echo "Deleting dev_flash3 working dirs.."
rm -rf dev_flash3_tmp
echo "Copying dev_flash and dev_flash3"
cp -rf dev_flash ../../dev_flash
cp -rf dev_flash3 ../../dev_flash3
else
echo "Copying dev_flash"
cp -rf dev_flash ../../dev_flash
fi
cd ../..
rm -rf TMP
echo "Done..."
else
echo "usage: "
echo " ./unpack_dev_flash.sh <PUP> <FOLDER>"
fi