[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: SCRIPT LEYENDO LINEAS RECURSIVAMENTE





2010/11/2 julio <julher@escomposlinux.org>
El mar, 02-11-2010 a las 14:55 -0600, rantis cares escribió:
> TODOS=$(cat /home/PEDRO/informacion.txt)
>
> rm $TODOS
>
> Realmente no pido una respuesta, solo que me guien porque al no saber
> tanto los terminos, no puedo buscar en internet.

Eso mejor lo haces con un bucle for, algo como

for i in `cat informacion`;
do
rm $i;
done

Así no va a funcionar si hay espacios. Ya que por defecto un for salta cada espacio o salto de linea, Lo que hay que hacer es decirle que salte solo cada nueva linea, para eso esta la variable IFS. Si no me falla la memoria seria algo así como: 

IFS = $(echo)
for i in $(cat information); do rm -rf "$i"; done 
 
también son muy importantes las "" en la variable $i, ya que los espacios y caracteres especiales van a causar problemas. de hecho creo que si un nombre empieza por '--' esta versión que he puesto tampoco funcionaria, para que funcionara tendríamos que hacer el rm de esta forma: rm -rf -- "$i"

saludos
--
Marc

Reply to: