Cuando ejecuto el comando de abajo:
mdfind -name iMazing
Obtengo la siguiente salida:
/Users/apple/Library/Application Support/MobileSync/Backup/iMazing.Versions
/Users/apple/Library/Application Support/com.DigiDNA.iMazing2Mac
Quiero ejecutar un bucle for a para borrar estos dirs.
Antes de hacerlo he probado con ls
:
for i in $(mdfind -name); do ls "$i"; done
La salida:
ls: /Users/apple/Library/Application: No such file or directory
ls: Support/MobileSync/Backup/iMazing.Versions: No such file or directory
ls: /Users/apple/Library/Application: No such file or directory
ls: Support/com.DigiDNA.iMazing2Mac: No such file or directory
Como puede ver, la división de palabras se ha producido debido al espacio en Application Support
He probado las siguientes variaciones:
"${i}"
Escapar de las comillas:
"\"$i"\"
"\"${i}"\"
sin éxito, ¿alguna idea?
EDITAR:
Así que IFS
no importa, ¿qué está pasando?:
kn: (master)
IFS=; for i in $(mdfind -name iMazing); do ls "$i"; done
ls: /Users/apple/Library/Application Support/MobileSync/Backup/iMazing.Versions
/Users/apple/Library/Application Support/com.DigiDNA.iMazing2Mac: No such file or directory
kn: (master)
while IFS= read -r i; do ls "$i"; done < <(mdfind -name iMazing)
Blueprints Readme.txt Temp Trash Versions
com.microsoft.appcenter
kn: (master)
while read -r i; do ls "$i"; done < <(mdfind -name iMazing)
Blueprints Readme.txt Temp Trash Versions
com.microsoft.appcenter