Ficheros con espacios en el nombre IFS

Imaginar que debemos iterar por una enorme jerarquia de directorios, usando find. Si la partición es NTFS posiblemente habrá nombres de archivo y de directorio con espacios. Podemos establecer el separador de campo a nueva linea (IFS) si vamos a operar con nombres de archivo o directorio que puedan contener espacios: #!/bin/bash IFS=’ ‘ lista=`find $1 -name $2` for i in $lista   do     rm -i $i   done El script anterior que podria llamarse limpieza.sh, espera 2 parámetros: $1 el directorio donde empezar a buscar, por ejemplo /home/jblanco , y $2 el patrón de búsqueda para la opción name, por ejemplo: *.avi Ejecuta el find cuyo resultado mete en la variable lista, con la cual itera en un bucle for, para borrar los archivos encontrados. Y una llamada al script, tal que así: ./limpieza.sh /home/jblanco *.avi

» Leer más

Script tipofichero.sh

#!/bin/bash if [ $# -lt 1 ];then echo «Uso: $0 fichero» exit fi FICHERO=»$0: » #clasificar el fichero if [ -f $1 ];then FICHERO=»$FICHERO fichero» else if [ -d $1 ];then FICHERO=»$FICHERO directorio» else if [ -h $1 ];then FICHERO=»$FICHERO enlace» else FICHERO=»$FICHERO otro tipo» fi fi fi #Comprobar atributos if [ -r $1 ];then FICHERO=»$FICHERO lectura» fi if [ -w $1 ];then FICHERO=»$FICHERO escritura» fi if [ -x $1 ];then FICHERO=»$FICHERO ejecución» fi echo $FICHERO

» Leer más
1 2 3 6