Buscar aquí

20 marzo 2015

Leer un archivo con un script en shell

Muchas veces es necesario procesar los contenidos de un archivo desde el shell de linux para ejecutar alguna acción, por ejemplo:

#!/bin/sh

while read line
do
    echo $line
 done <  nombre_del_archivo

Este script hace algo muy simple, lee cada linea del archivo y la escribe por pantalla.  Hay una diferencia importante, es que este script considera todo el contenido de la linea, mientras que al usar una sentencia for, toma sólo la primera palaba hasta el separador, que por defecto es el espacio, por eso, es común tener algún problema al usar la sentencia for cuando se quiere leer la línea completa.

En el caso del for sería algo así:

for linea in `cat archivo`
do
     echo $linea
done

No hay comentarios.:

Publicar un comentario