He investigado un poco, pero aún no he descubierto una solución que funcione (para mi sorpresa). He estado intentando esto:
# for i in `ls`; do tftp -l "$i" -p 192.168.1.100; done
Solo quiero transferir por TFTP el contenido de un directorio completo (sin tar/comprimirlos). El problema es, por supuesto, que los espacios en los nombres de los archivos lo estropean todo. ¿Quizás debería usar alguna otra estrategia?
Los scripts de Shell no son exactamente mi punto fuerte...
(Puntos extra (en realidad no) si hay una solución recursiva que funcione).
Respuesta1
Tipo
IFS=$(echo -en "\n\b")
antes de ejecutar su bucle, esto solucionará el problema del nombre del archivo.
Si desea archivos tftp de forma recursiva, utilice lo siguiente:
find . -print0 | while read -d $'\0' i
do
tftp -l "$i" -p 192.168.1.100
done