Foros del Web » Administración de Sistemas » Unix / Linux »

ayuda con shell script

Estas en el tema de ayuda con shell script en el foro de Unix / Linux en Foros del Web. Hola! estoy intentando programar un shell script que recorra un texto en busca de una linea concreta. En caso de encontrarla no debe mostrar nada, ...
  #1 (permalink)  
Antiguo 02/04/2008, 12:43
 
Fecha de Ingreso: junio-2006
Mensajes: 6
Antigüedad: 18 años, 5 meses
Puntos: 0
ayuda con shell script

Hola!

estoy intentando programar un shell script que recorra un texto en busca de una linea concreta. En caso de encontrarla no debe mostrar nada, por lo contrario, si no encuentra esa linea debe mostrar el contenido del texto tal cual fue recibido.

Con esa finalidad he llegado hasta este script, al que he llamado myscript.sh:

#!/bin/sh
cadena="PRIVATE FILE: YES"
encontrado=0

#recorremos el texto
while read line ; do
if [ "$encontrado" -eq 1 ]; then
continue
fi

if [ "$line" = "$cadena" ]; then
buffer=""
encontrado=1
continue
fi

buffer=$buffer$line
done

echo $buffer



La llamada la hago desde la consola así:
cat texto.txt | myscript.sh

Esto funciona, pero se come todos los saltos de linea.

Supongo que el error está al almacenar cada linea en la variable buffer, pero no sé cómo hacer ese salto de linea.
  #2 (permalink)  
Antiguo 02/04/2008, 13:53
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: ayuda con shell script

¿Y qué tal si usás grep para buscar la cadena?
sería más sencillo, bastaría con

grep "lo que busco" archivo

y listo... a menos claro que esto sea un ejercicio y tengas que resolverlo sin grep


Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:56.