[ubuntu-gt] Consulta de Bash

Peter Grant plgmgua en gmail.com
Jue Abr 29 16:05:41 BST 2010


El 8 de febrero de 2010 21:48, Peter Grant <plgmgua en gmail.com> escribió:

> 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
>
>
>

Buen dia jovenes, molestando con otra consulta de bash en Debian lenny

necesito buscar archivos listados en un archivo de texto
cada linea contienen unicamente el nombre del archivo (sin extension)

tengo el siguiente script
#!/bin/sh
echo ingrese el archivo con el listado:
read listado
exec<$listado
while read line
do
find  -name $line -print;      ## esta linea busca los archivos que estan en
el listado plano
echo nombre del archivo $line;
done

El caso es que si corro el script en "Ubuntu"  me funciona de maravilla,
pero al correrlo en Debian,  no me encuentra los archivos,  al parecer la
varible $line si contiene el "nombre del archivo" pero el comando "find"  no
reconce el contenido de la variable.

Espero su ayuda,  saludos.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://lists.ubuntu.com/archives/ubuntu-gt/attachments/20100429/b5c88218/attachment.htm 


Más información sobre la lista de distribución ubuntu-gt