Android / Linux: elimine varios archivos que contengan la @, excepto 2 archivos


1

Estoy tratando de eliminar con Terminal Emulator o Termux archivos ubicados en / data / dalvik-cache / arm. Quiero eliminar todos los archivos excepto 2 de ellos: "system @ framework @ boot.art" y "system @ framework @ boot.oat". El problema es con el carácter especial "@" encontrado 2 veces en el nombre de los archivos.

Mi objetivo es escribir un script muy básico para bash, en el que simplemente monte el sistema, elimine todo excepto los 2, desmonte y reinicie. ¿Alguien podría ayudarme por favor? Soy bastante nuevo en todo esto. He buscado en muchos sitios web, páginas de manual sin suerte mezclando la eliminación de múltiples archivos que contienen caracteres especiales y al mismo tiempo excluyendo algunos.

Esto es lo que estoy intentando:

#/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

Como se indicó, el rmcomando (con el comodín extendido) obtiene un "Error de sintaxis".

Respuestas:


0
  1. La primera línea de su script es un comentario. Si quiere decir que es un "she-bang", debe comenzar con #! (dejó de lado !).
  2. ... y luego podría funcionar mejor si lo dices #!/system/bin/bash.

¡Muchas gracias! Escribí el guión a toda prisa y debí haberme olvidado del. ¡Utilicé el bash provisto por Termux y funcionó! ¡Gracias de nuevo!
Extranjero
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.