
Estoy intentando guardar el resultado de la búsqueda en una variable de esta manera:
a=find /Users/Downloads/DTI_allsites/subprojects/*/UII_0077 -name "dti_preprocessed" -type d
Pero sigo recibiendo el siguiente mensaje:
-intento:
/Users/Downloads/DTI_allsites/subprojects/UII_B/UII_0077: es un directorio
cada vez que intento usar el comando, hacer eco de la ruta usando:
echo $a
No consigo guardar nada en la variable. ¿Cómo puedo arreglar esto?
Respuesta1
Dado que find
devuelve una lista de rutas de archivos, querrás utilizar una variable de matriz. Dado que la ruta de un archivo puede contener cualquier carácter excepto NUL, querrás usar -print0
y dividir el resultado en NUL.
Con bash4.4
+:
readarray -td '' list < <(find ... -print0)
so-something-with "${list[@]}"