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