Как да четете файл ред по ред в скрипт на Bash

How Read File Line Line Bash Script



Как бихте написали Bash скрипт, който може да обработва текстов файл по един ред. Първо се нуждаете от синтаксис и подход, за да прочетете файла ред по ред. Методите за този подход са показани в този урок.

Да предположим, че имате файл с име company.txt което съдържа имената на фирмите. Този файл съдържа следното съдържание.







Company.txt
Samsung
Nokia
LG
Симфония
iphone

Пример -1: Четене на файлово съдържание от командния ред

Да предположим, че искате да прочетете файла, company.txt , ред по ред от командния ред без „Котка“ команда. Изпълнете следната команда, за да изпълните задачата. докато loop ще прочете всеки ред от файла company.txt във всяка стъпка и съхранявайте съдържанието на реда в $ ред променлива, която ще бъде отпечатана по -късно.



$докато Прочетилиния;направете изхвърлен $ ред;Свършен <company.txt



Пример -2: Четене на съдържание на файл с помощта на скрипт

Създайте bash файл и добавете следния код, за да прочетете съдържанието на конкретен файл. Тук съществуващо име на файл се съхранява в $ име на файл променлива и $ n променливата се използва за запазване на стойността на номера на реда на този файл. Подобно на предишния пример, докато loop се използва за четене на този файл с номер на ред.





#!/bin/bash
име на файл='company.txt'
н=1
докато Прочетилиния;направете
# четене на всеки ред
изхвърлен „Ред №$ n:$ ред'
н= $((n+1))
Свършен < $ име на файл

Изпълнете следната команда, за да изпълните скрипта.

$башreadfile1.sh

Бягай „Котка“ команда с company.txt файл за показване на оригиналното съдържание на company.txt файл.



$ cat company.txt

Пример -3: Предаване на име на файл от командния ред и четене на файла

Създайте bash файл и добавете следния скрипт. Този скрипт ще вземе името на файла от аргумента на командния ред. Стойността на първия аргумент се чете от променливата $ 1, която ще съдържа името на файла за четене. Ако файлът съществува на текущото място, тогава докато loop ще прочете файла ред по ред като предишния пример и ще отпечата съдържанието на файла.

#!/bin/bash
име на файл=$ 1
докато Прочетилиния;направете
# четене на всеки ред
изхвърлен $ ред
Свършен < $ име на файл

Стартирайте горния скрипт с служител.txt файл като стойност на аргумента. Изходът ще покаже съдържанието на служител.txt файл, като премахнете допълнително място. Можете да покажете оригиналното съдържание на служител.txt файл, като използвате „Котка“ команда.

$ bash readfile2.txt служител.txt
$ cat служител.txt

Пример - 4: Четене на файл чрез пропускане на обратната наклонена черта

Ако искате да прочетете всеки ред от файл, като пропуснете бягството от наклонена черта, тогава трябва да използвате ‘-R’ опция с вградена команда за четене докато цикъл.

#!/bin/bash
докато Прочети -rлиния;направете
# Четене на всеки ред
изхвърлен $ ред
Свършен <company2.txt

Създайте файл с име company2.txt с обратна наклонена черта и изпълнете следната команда, за да изпълните скрипта. Изходът ще покаже съдържанието на файла без обратна наклонена черта.

$башreadfile3.sh

Ще трябва да прочетете файла за много програмиране. Например, можете лесно да търсите или съпоставяте всяко конкретно съдържание от всеки файл, като прочетете всеки ред поотделно. Така че, това е съществена задача за всяко програмиране. Някои прости примери за четене на файл в bash скрипт са показани в този урок. Те ще ви помогнат да добиете идеята да четете съдържанието на файла ред по ред, като използвате while цикъл в bash скрипт и да го прилагате по -ефективно в скрипта си. За повече информация гледайте видеото !