27/02/2007, 20:37
|
| | | Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 9 meses Puntos: 1 | |
Re: Borrar linea con find Utilizando solo find no podrias hacer eso, tendrias que hacer un pequeño script, utilizando find, cat, sed y algunos otros comandos.
Primero tendrias que generar la lista de archivos a los que le quieres borrar la tercer linea:
find /rutadebusqueda/ -name "nombredelarchivo" > listadearchivos.txt
luego dentro de un ciclo leer linea por linea para determinar el nombre del archivo (aqui la magia la hace el comando read):
while read listadearchivos.txt archivo
do
# Aqui borra la tercera linea de cada archivo
cat $archivo |sed 3d > $archivo
done
Al final quedaria algo como esto :
############# INICIA SCRIPT ############
#!/bin/sh
find $0 -name $1 > listadearchivos.txt
while read listadearchivos.txt archivo
do
cat $archivo |sed 3d > $archivo
done
rm -f listadearchivos.txt
############# TERMINA SCRIPT ############
Copia este codigo y pegalo en un archivo llamado buscaycopia.sh. Lo unico que tendrias que hacer es pasar como parametros la ruta de busqueda y el patron con el que buscas los archivos, por ejemplo : #buscayborra.sh /home/juan archivoimportante
Pruebalo, yo no tengo donde hacerlo. Espero que pueda ayudarte.
__________________ ¿Que importa el resto?, el resto es simplemente la humanidad, hay que ser superior a humanidad, por fuerza, por altura de alma, por desprecio ...
Última edición por c4r1o5; 27/02/2007 a las 20:46 |