Како читати датотеку ред по ред у Басх скрипти

How Read File Line Line Bash Script



Како бисте написали Басх скрипту која може да обрађује текстуалну датотеку један по један ред. Прво вам је потребна синтакса и приступ за читање датотеке ред по ред. Методе за овај приступ приказане су у овом водичу.

Претпоставимо да имате датотеку под називом цомпани.ткт који садржи називе компанија. Ова датотека садржи следећи садржај.







Цомпани.ткт
Самсунг
Нокиа
ЛГ
Симпхони
ипхоне

Пример -1: Читање садржаја датотеке из командне линије

Претпоставимо да желите да прочитате датотеку, цомпани.ткт , ред по ред из командне линије без 'Мачка' команда. Покрените следећу команду да бисте обавили задатак. док лооп ће прочитати сваки ред из датотеке цомпани.ткт у сваком кораку и ускладиштите садржај линије у $ линија променљива која ће бити одштампана касније.



$док читатилине;урадити Избацио $ линија;Готово <цомпани.ткт



Пример -2: Читање садржаја датотеке помоћу скрипте

Направите басх датотеку и додајте следећи код да бисте прочитали садржај одређене датотеке. Овде је постојећи назив датотеке ускладиштен у $ назив датотеке променљива и $ н променљива се користи за чување вредности броја ретка те датотеке. Као и претходни пример, док лооп се користи за читање ове датотеке са бројем линије.





#!/бин/басх
назив документа='цомпани.ткт'
н=1
док читатилине;урадити
# читање сваког реда
Избацио 'Ред бр.$ н:$ линија'
н= $((н+1))
Готово < $ назив датотеке

Покрените следећу команду да бисте извршили скрипту.

$басхреадфиле1.сх

Трцати 'Мачка' командује са цомпани.ткт датотеку за приказ оригиналног садржаја цомпани.ткт филе.



$ цат цомпани.ткт

Пример -3: Преношење назива датотеке из командне линије и читање датотеке

Направите басх датотеку и додајте следећу скрипту. Ова скрипта ће преузети име датотеке из аргумента командне линије. Вредност првог аргумента чита променљива $ 1 која ће садржати назив датотеке за читање. Ако датотека постоји на тренутној локацији, тада док лооп ће читати датотеку ред по ред као у претходном примеру и одштампати садржај датотеке.

#!/бин/басх
назив документа=1 УСД
док читатилине;урадити
# читање сваког реда
Избацио $ линија
Готово < $ назив датотеке

Покрените горњу скрипту са запослени.ткт датотека као вредност аргумента. Излаз ће приказати садржај запослени.ткт датотеку уклањањем додатног простора. Можете приказати оригинални садржај запослени.ткт датотеку помоћу 'Мачка' команда.

$ басх реадфиле2.ткт запослених.ткт
$ цат воркер.ткт

Пример - 4: Читање датотеке изостављањем евакуације са обрнутом цртом

Ако желите да прочитате сваки ред датотеке изостављањем повратне косе црте, морате да користите '-Р' опција са наредбом за читање док петља.

#!/бин/басх
док читати лине;урадити
# Читање сваког реда
Избацио $ линија
Готово <цомпани2.ткт

Направите датотеку под називом цомпани2.ткт са обрнутом косом цртом и покрените следећу команду да бисте извршили скрипту. Излаз ће приказати садржај датотеке без обрнуте косе црте.

$басхреадфиле3.сх

Датотеку ћете морати да читате у многе сврхе програмирања. На пример, можете лако претраживати или подударати било који одређени садржај из било које датотеке читањем сваког реда засебно. Дакле, то је суштински задатак за свако програмирање. Неки једноставни примери читања датотеке у басх скрипти приказани су у овом водичу. Ово ће вам помоћи да стекнете идеју о читању садржаја датотеке ред по ред користећи вхиле петљу у басх скрипти и да је ефикасније примените у скрипти. За више информација погледајте Видео !