Bash Прогресивне читання файлу - while read line цикл

Цикл while - це найкращий спосіб порядкового читання файлу в Linux.

Якщо вам необхідно через підрядник прочитати файл і виконати будь-яку дію з кожної його рядком, тоді найправильнішим способом для цього є іспользовніє конструкції while read line в Bash.

У цій статті я покажу загальний синтаксис конструкції while read line в Bash і приклад того, як через підрядник прочитати файл з командного рядка в Linux.

Також я приведу приклад Bash скрипта, який через підрядник Новомосковскет передається йому файл і виводить кожен рядок, додаючи до неї певний текст.

Цикл While Read Line в Bash

Загальна структура конструкції while read line. яка може використовуватися в Bash скриптах:

Та ж конструкція одним рядком (легко використовувати з командного рядка в Linux):

Як приклад виведемо список всіх користувачів з файлу / etc / passwd:

LINE в цій конструкції - це назва змінної, в якій зберігається значення поточного рядка під час кожної ітерації циклу.

Залежно від вмісту вашого файлу (FILE), для зручності, ви можете назвати цю змінну як вам буде завгодно.

Наприклад, якщо ви зберігаєте в файлі список користувачів, буде краще якщо замість LINE ви назвете цю змінну USER. і тоді це буде виглядати таким чином:

Bash Скрипт: Порядкове Читання файлу

Створимо Bash скрипт, який в якості аргументу отримує шлях до файлу і друкує слова "Це рядок:" в розпочали кожного рядка цього файлу.

Створіть порожній файл readfile.sh за допомогою команди touch readfile.sh.

Зробіть його виконуваним за допомогою chmod + x readfile.sh.

Збережіть зміни в запустіть скрипт: