Cómo leer eficientemente líneas de un archivo en un script de shell

29 dic 2022 1 min di lettura
Cómo leer eficientemente líneas de un archivo en un script de shell
Indice dei contenuti

Introducción

Leer un archivo línea por línea es una tarea común en muchas secuencias de comandos de shell, ya que le permite procesar cada línea de un archivo por separado y realizar acciones en función del contenido de cada línea. Hay varias formas de leer un archivo línea por línea en un script de shell de Linux, pero algunos métodos son más eficientes que otros. En este artículo, exploraremos algunas de las formas más eficientes de leer un archivo línea por línea en un script de shell de Linux.

Usando el ciclo while

En un script de shell, las líneas de un archivo se pueden leer de manera eficiente usando el comando while en combinación con el comando de read. Por ejemplo, considere el siguiente script de shell:

# Apri il file in lettura
 while IFS= read -r line; do
 # Processa la riga letta
 echo "Ho letto la riga: $line"
 done < "file.txt"

En este ejemplo, abrimos el archivo file.txt para lectura y, para cada línea del archivo, asignamos el valor de la línea a la variable line y lo imprimimos en la pantalla.

El comando while se repetirá siempre que haya líneas para leer en el archivo, lo que significa que el archivo se leerá de manera eficiente, sin tener que cargar todo el contenido del archivo en la memoria.

Nota: el comando de read solo está disponible en sistemas basados en Unix, como Linux y macOS. Si usa otro sistema operativo, como Windows, puede usar otros comandos para leer líneas de un archivo, como for /f.

Conclusión

Espero haber sido útil. Si tienes más preguntas, ¡no dudes en preguntar!

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.