Android / Linux: Löschen Sie mehrere Dateien, die das @ enthalten, mit Ausnahme von 2 Dateien

435
Alien

Ich versuche, mit Terminal Emulator oder Termux-Dateien zu löschen, die sich in / data / dalvik-cache / arm befinden. Ich möchte alle Dateien löschen, außer zwei davon: "system @ framework @ boot.art" und "system @ framework @ boot.oat". Das Problem wird mit dem Sonderzeichen "@" 2 mal im Namen der Dateien gefunden.

Mein Ziel ist es, ein sehr rudimentäres Skript für bash zu schreiben, in dem ich einfach das System mounte, alles außer den beiden lösche, das Unmount aufnehme und neu starte. Könnte mir bitte jemand helfen? Ich bin das alles ziemlich neu. Ich habe viele Websites gesucht, man-Seiten, ohne viel Glück dabei zu haben, mehrere Dateien mit Sonderzeichen zu entfernen und gleichzeitig einige davon auszuschließen.

Folgendes versuche ich:

#/system/bin/sh mount -o rw,remount,rw /system cd /data/dalvik-cache/arm shopt -s extglob rm -v !("system@framework@boot.art"|"system@framework@boot.oat") --> Syntax error mount -o ro,remount,ro /system reboot 

Wie angegeben, rmerhält der Befehl (mit dem erweiterten Platzhalter) einen "Syntaxfehler".

1

1 Antwort auf die Frage

0
Scott
  1. Die erste Zeile Ihres Skripts ist ein Kommentar. Wenn Sie meinen, dass es ein "She-Bang" ist, muss es mit #! (Sie haben das weggelassen !) beginnen.
  2. … Und dann klappt es vielleicht besser #!/system/bin/bash.
Vielen Dank! Ich habe das Skript in Eile geschrieben und muss das! Vergessen haben. Ich habe die von Termux bereitgestellte Bash verwendet und es hat funktioniert! Danke noch einmal! Alien vor 5 Jahren 0