cómo leer archivo LÍNEA por línea en Bash script
Cómo escribiría un script Bash que puede procesar un archivo de texto una línea a la vez. Primero necesita una sintaxis y un enfoque para leer el archivo LÍNEA por línea. Los métodos para este enfoque se muestran en este tutorial.
supongamos que tiene un archivo llamado company.txt que contiene los nombres de las empresas. Este archivo contiene el siguiente contenido.
Samsung
Nokia
LG
Symphony
iphone
ejemplo -1: lectura del contenido del archivo desde la línea de comandos
supongamos que desea leer el archivo, empresa.txt, línea por línea desde la línea de comandos sin el comando ‘cat’. Ejecute el siguiente comando para realizar la tarea. while loop leerá cada línea del archivo company.txt en cada paso y almacenar el contenido de la línea en variable line variable que se imprimirá más adelante.
ejemplo -2: lectura del contenido del archivo mediante script
cree un archivo bash y agregue el siguiente código para leer el contenido de un archivo en particular. Aquí, un nombre de archivo existente se almacena en la variable fil filename y la variable n n se utiliza para mantener el valor del número de línea de ese archivo. Al igual que el ejemplo anterior, while loop se usa para leer este archivo con el número de línea.
filename = » company.txt «
n = 1
while read line; do
# reading each line
echo » Line No., $n : $line»
n=$((n+1))
hecho < $nombre_archivo
Ejecute el siguiente comando para ejecutar la secuencia de comandos.
Ejecutar el comando ‘cat’ con la compañía.archivo txt para mostrar el contenido original de la empresa.archivo txt.
ejemplo -3: pasar el nombre del archivo desde la línea de comandos y leer el archivo
crear un archivo bash y añadir el siguiente script., Este script tomará el nombre del archivo del argumento de la línea de comandos. El primer valor del argumento es leído por la variable $1 que contendrá el nombre del archivo para la lectura. Si el archivo existe en la ubicación actual, while loop leerá el archivo LÍNEA por línea como en el ejemplo anterior e imprimirá el contenido del archivo.
filename=while 1
while read line; do
# reading each line
echo line line
done <$filename
ejecute el script anterior con employee.archivo txt como valor de argumento. La salida mostrará el contenido del empleado.,archivo txt eliminando espacio adicional. Puede mostrar el contenido original del empleado.archivo txt usando el comando ‘cat’.
employee empleado de cat.txt
Ejemplo-4: lectura del archivo omitiendo el escape de barra invertida
si desea leer cada línea de un archivo omitiendo el escape de barra invertida, debe usar la opción ‘- r ‘ con el comando leer en el bucle while.
while read-r line; do
# Reading each line
echo line line
done< company2.txt
Crear un archivo llamado empresa2.txt con barra invertida y ejecute el siguiente comando para ejecutar el script. La salida mostrará el contenido del archivo sin ninguna barra invertida.
Usted tendrá que leer el archivo para muchos propósitos de programación. Por ejemplo, puede buscar o hacer coincidir cualquier contenido en particular fácilmente desde cualquier archivo leyendo cada línea por separado., Por lo tanto, es una tarea esencial para cualquier programación. Algunos ejemplos simples de lectura de archivos en el script bash se muestran en este tutorial. Estos le ayudarán a tener la idea de leer el contenido del archivo LÍNEA por línea usando while loop en bash script y aplicarlo en su script de manera más eficiente. Para más información vea el video!