[ubuntu-gt] Consulta de Bash
Peter Grant
plgmgua en gmail.com
Mar Feb 9 03:48:36 GMT 2010
2010/2/4 Richard Flores <kayrosama en hotmail.com>
> Saludos Peter Grant,
>
> Amigo, se me ocurre lo siguiente, en un archivo.sh digitas lo siguiente:
>
> /* ------------------------------- */
> #!/bin/bash
> for i in `cat fraces.txt | cut -d' ' -f1 | grep -n ''`
> do
> line=`echo -e "$i" | cut -d: -f1`
> word=`echo -e "$i" | cut -d: -f2`
> echo -e "la linea = $line y la palabra = $word"
> sleep 1
> done
> /* ------------------------------- */
>
> este leera el archivo "fraces.txt" con loas siguientes lineas:
>
> /* ------------------------------- */
> esta es una prueba
> para leer la priemra
> palabra de cada linea
> esperemos que funcione
> saludos amigos mios
> /* ------------------------------- */
>
> Si quieres que el archivo.sh lea cualquier archivo con lineas solo tienes
> el nombre del fichero por "$1":
>
> /* ------------------------------- */
> #!/bin/bash
> for i in `cat $1 | cut -d' ' -f1 | grep -n ''`
> do
> line=`echo -e "$i" | cut -d: -f1`
> word=`echo -e "$i" | cut -d: -f2`
> echo -e "la linea = $line y la palabra = $word"
> sleep 1
> done
> /* ------------------------------- */
>
> y para ejecutar el archivo seria de la sigueinte forma:
>
> ./archivo.sh fraces.txt
>
> X-favor tus comentarios.
>
> Salu2.
>
> #---------*---------*---------*---------*---------*
> IT Richard Flores.
> Technical Support GNU/Linux & Unix
> Kayro Sama, Ink.
> Linux User #285690
>
Excelente codigo Muchas Gracias
Esto lo necesitaba para borrar unos registros del sybase desde la consola y
la primera palabra de cada linea contiene el identificador del registro que
se borra y que es necesario hacerlo uno a la vez por cuestion scripts ya
hechos.
adicional a eso tuve que eliminar un espacio en blanco que tenia cada linea
al inicio, con el siguiente comando:
*
sed 's/^ *//' frances.txt > frances2.txt*
Con lo que el script quedaria asi:
/* ------------------------------- */
#!/bin/bash
sed 's/^ *//' frances.txt > frances2.txt
for i in `cat fraces2.txt | cut -d' ' -f1 | grep -n ''`
do
word=`echo -e "$i" | cut -d: -f2`
echo -e "# de suceso: = $word"
sleep 1
done
/* ------------------------------- */
Agradezco el aporte!!!!
Peter Grant
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://lists.ubuntu.com/archives/ubuntu-gt/attachments/20100208/784ffdb2/attachment.htm
Más información sobre la lista de distribución ubuntu-gt