updater-script befehl gesucht

SimonGleinert

SimonGleinert

Dauergast
454
Hallo...
Ich mühe mich jetzt schon seit mehreren Stunden damit ab, einen Befehl zu finden, wie ich per updater-script alle Datein mit einer besonderen Endung in einem Ordner löschen zu lassen.
Im grunde geht es um folgendes:
Ich hab CM installierst und hab spaßeshalber mal odex draus gemacht, mittels script, was ich auf xda gefunden habe...das ich dadurch verbesserte Akkulaufzeit habe, kann ich zwar nicht gerade behauptet, aber von der Ramauslastung ist es schon deutlich besser.
Nun ist es aber so:
Normalerweise muss man die gApps bei CM ja nur einmal flashen und wenn man dann CM updatet, läuft ein backup script, was die gApps erst sichert und nachdem das system formatiert + neu geflasht worden ist, wieder neu herstellt.
Dies funktioniert aber nicht...
Mittlerweile hab ich nun raus gefunden, das im backup-script verankert ist, das alle Apps mit einer odex-datei übersprungen werden sollen...
Ist zwar n bisschen blöd, aber gut.
Natürlich könnte man jetzt den betreffenden Part aus dem Backupscript einfach rausstreichen, aber sooft wie CM Nightlys bringt, würde das auf dauer doch nervig werden.
Weiter könnte man natürlich auch n updater-script erstellen und dort alle betreffenden Apps auflisten ( delete "(/system/app/xy.odex)"; ) ,aber finde ich auch nicht so das wahre.
Deshalb halt meine Frage:

Wie müsste der Befehl aussehen, um alle .odex Dateien aus einem betreffenden Verzeichnis zu löschen (app & priv-app)

Danke schon mal im Vorraus
 
Wenn delete("/system/app/*.odex"); nicht geht, wie wäre es mit einem Shell-Befehl, den du per run_program(...) aufrufst?

Beispiel (ohne Gewähr):
run_program("/sbin/busybox", "rm", "/system/app/*.odex"); (Shell per Busybox auch nur als Beispiel)
run_program("/sbin/busybox", "rm", "/system/priv-app/*.odex");
 
Ha ha, danke :)
An das Sternchen hatte ich gar nicht gedacht
Epic fail
:facepalm:
 
Also...
Ich brauche doch noch mal Hilfe -.-

Es klappt irgendwie nicht :/
Weder mit normalen Befehl, noch als Shell.
Ich hab busybox als sbin und mit in der Zip versucht (/tmp), aber die odex datein werden trotzdem nicht entfernt.
Gebe ich den Befehl aber im Terminal ein, über den AromaFilemanager im Recovery, klappt es.
Mach ich vielleicht irgendwas falsch, oder hat jemand sonst noch eine Idee?

Hier ist mal der Inhalt vom updater-script:

Code:
package_extract_file("busybox", "/tmp/busybox");
set_perm(0, 0, 0777, "/tmp/busybox");
run_program("/tmp/busybox", "mount", "/system");
run_program("/tmp/busybox", "mount", "/data");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
ui_print("Removing App-Odex");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
run_program("/tmp/busybox", "rm", "/system/app/*.odex");
sleep(1);
ui_print("Removing Priv-App-Odex");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
run_program("/tmp/busybox", "rm", "/system/priv-app/*.odex");
sleep(1);
ui_print("Removing Framework-Odex");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
run_program("/tmp/busybox", "rm", "/system/framework/*.odex");
sleep(1);
run_program("/tmp/busybox", "umount", "/system");
run_program("/tmp/busybox", "umount", "/data");[COLOR="Silver"]
Der ursprüngliche Beitrag von 09:40 Uhr wurde um 10:52 Uhr ergänzt:

[/COLOR]So :)
Problem gelöst :D
Neues updater script:
Code:
package_extract_file("busybox", "/tmp/busybox");
set_perm(0, 0, 0777, "/tmp/busybox");
package_extract_file("deodex.sh", "/tmp/deodex.sh");
set_perm(0, 0, 0777, "/tmp/deodex.sh");
run_program("/tmp/busybox", "mount", "/system");
run_program("/tmp/busybox", "mount", "/data");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
ui_print("@ Removing Odex");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
assert(run_program("/tmp/deodex.sh"));
sleep(1);
run_program("/tmp/busybox", "umount", "/system");
run_program("/tmp/busybox", "umount", "/data");
deodex.sh:
Code:
#!/tmp/busybox sh
rm /system/app/*.odex
rm /system/priv-app/*.odex
rm /system/framework/*.odex
Komisch das es jetzt auf diese Art funktioniert :confused:
 
Zuletzt bearbeitet von einem Moderator:
Wie bekomme ich die Ordner ,samt Daten ,mit script rein kann mir einer helfen ?

Code:
ui_print("Restore Build.prop");
ui_print("Mounting system...");
run_program("/sbin/busybox", "mount", "/system");
show_progress(1, 15);
ui_print("Restoring Build.prop");
package_extract_dir("system", "/system");
package_extract_dir("system/app", "/system/app");
package_extract_dir("system/lib", "/system/lib");
package_extract_dir("system/etc", "/system/etc");
package_extract_dir("system/vendor", "/system/vendor");
package_extract_dir("system/cameradate", "/system/cameradate");
package_extract_dir("system/bin", "/system/bin");
set_perm(0, 0, 06755, "/system/build.prop");
ui_print("Unmounting system...");
run_program("/sbin/busybox", "umount", "/system");
ui_print("Fertig :-)");




Code:
ui_print(" ");
show_progress(0.750000, 0);
ui_print("Patching system image unconditionally...");
block_image_update("/dev/block/platform/msm_sdcc.1/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
show_progress(0.020000, 10);
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
run_program("/tmp/install/bin/backuptool.sh", "restore");
unmount("/system");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
package_extract_dir("system", "/system");
unmount("/system");
ui_print("Flashing SuperSU...");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
package_extract_dir("system", "/system");
package_extract_dir("bin", "/bin");
package_extract_dir("lib", "/lib");
package_extract_dir("etc", "/etc");
package_extract_dir("vendor", "/vendor");
package_extract_dir("cameradate", "/cameradate");
package_extract_dir("app", "/app");
package_extract_dir("supersu", "/tmp/install/bin/supersu");
run_program("/sbin/busybox", "unzip", "/tmp/install/bin/supersu/supersu.zip", "META-INF/com/google/android/*", "-d", "/tmp/install/bin/supersu");
run_program("/sbin/busybox", "sh", "/tmp/install/bin/supersu/META-INF/com/google/android/update-binary", "dummy", "1", "/tmp/install/bin/supersu/supersu.zip");
unmount("/system");
show_progress(0.050000, 5);
package_extract_file("boot.img", "/dev/block/platform/msm_sdcc.1/by-name/boot");
show_progress(0.200000, 10);
 
Zuletzt bearbeitet:

Ähnliche Themen

A
Antworten
2
Aufrufe
1.545
MB526
MB526
D
Antworten
0
Aufrufe
1.135
DerToshy
D
C
Antworten
6
Aufrufe
1.558
crazyphil1986
C
Zurück
Oben Unten