Thank you for reading this post, don't forget to subscribe!
Метод 1: использование перенаправление ввода
Самый простой способ прочитать файл построчно – использовать перенаправитель ввода в цикле while.
Чтобы продемонстрировать, мы создали образец файла с именем mycontent.txt и будем использовать его в этом руководстве.
1 2 3 4 5 |
$ cat mycontent.txt This is a sample file We are going through contents line by line to understand |
Давайте создадим скрипт с именем example1.sh, который использует перенаправление ввода и цикл.
1 2 3 4 5 6 |
$ more example1.sh #!/bin/bash while read y do echo "Line contents are : $y " done < mycontent.txt |
Как это устроено:
- – Объявление оболочки “bash”
- – Запуск цикла while и сохранение содержимого строки в переменной «y»
- – Часть цикла while (начальная точка) – echo для вывода, а «$ y» означает вывод значения переменной, т.е. строки
- – Чтение содержимого файла с помощью перенаправителя ввода «<» и закрытие с помощью done
Выполнение скрипта и вывод:
1 |
$ ./example1.sh |
1 2 3 4 |
Line contents are : This is a sample file Line contents are : We are going through contents Line contents are : line by line Line contents are : to understand |
Метод 2: использование команды cat
Второй метод – использовать команду cat и затем отправлять ее вывод в качестве входных данных в цикл while, используя pipe.
Создайте файл скрипт example2.sh с таким содержанием:
1 2 3 4 5 6 7 |
$ more example2.sh #!/bin/bash cat mycontent.txt | while read y do echo "Line contents are : $y " done |
Как это устроено:
- – Объявление оболочки “bash”
- – Вывод команды cat, отправленной как вход в цикл while с использованием пайпа «|» и сохранение содержимого строки в переменной «y»
- – Часть цикла while (начальная точка) – echo для вывода, а «$ y» означает вывода значения переменной, т.е. строки
- – Завершение цикла while с done
Выполнение скрипта и вывод: