Bemærk: Metoderne vist nedenfor er blevet demonstreret på Ubuntu 20.04. De fungerer dog også godt med enhver anden Linux -distribution.
Metoder til brug for hver linje i filen i Bash:
I disse metoder viser vi dig et eksempel, hvor du kan læse hver linje fra en fil, og derefter kan du enten vise den på terminalen, eller du kan endda gemme disse linjer i en anden fil. Lad os se på begge disse metoder.
Metode 1: Til visning af læselinjer på terminalen:
For at vise linjerne i en fil på terminalen ved hjælp af for hver linje i filen, skal du udføre følgende trin:
Trin # 1: Oprettelse af en dummy tekstfil:
Først og fremmest skal du oprette en tekstfil med nogle tilfældige data af hensyn til demonstrationen. Selvom denne tekstfil kan oprettes hvor som helst, anbefales det dog stærkt, at du opretter den i hjemmemappen. For at gøre det skal du klikke på ikonet Filhåndtering fremhævet på billedet nedenfor:

Højreklik nu hvor som helst i din hjemmemappe, og vælg indstillingen Nyt dokument i menuen, der vises. Vælg derefter indstillingen Tom dokument. Når et tomt dokument er blevet oprettet i din hjemmemappe, skal du angive det navn, du ønsker, for det efterfulgt af .txt -udvidelsen. I dette eksempel har vi navngivet det som ForEachLine.txt.

Dobbeltklik på denne tekstfil for at åbne den, og skriv derefter tilfældig tekst i den som vist på følgende billede. Når du har gjort dette, skal du gemme denne fil og lukke den.

Trin # 2: Oprettelse af Bash Script:
Opret nu en Bash -fil på samme måde, som du har oprettet tekstfilen i hjemmemappen, bortset fra at du denne gang skal angive dens navn efterfulgt af .sh -udvidelsen i stedet for .txt -udvidelsen. Vi har navngivet vores Bash -fil som ForEachLine.sh, men du kan give den et hvilket som helst navn efter eget valg.
Åbn denne fil ved at dobbeltklikke på den, og indtast derefter scriptet vist på billedet herunder i din nyoprettede Bash-fil. Her er den første linje der for at angive, at det følgende script er et Bash -script. Vi har simpelthen oprettet en variabel ved navn File og har tildelt navnet på vores tekstfil som dens værdi, dvs. ForEachLine.txt. Derefter har vi oprettet en variabel ved navn Lines og udlignet til $ (cat $ File). Her læser cat -kommandoen indholdet i vores tekstfil, og når der er et $ -symbol forud for det, vil indholdet, der læses af denne kommando, blive gemt i linjevariablen. På denne måde gemmes alle linjer i filen med navnet ForEachLine.txt i linjevariablen. Derefter har vi anvendt For -løkken, som har en iteratorlinje. Denne iterator fungerer på linjevariablen, som vi har oprettet ovenfor, og den gentager alle linierne én efter én. Derefter i den udførte blok har vi simpelthen vist alle disse linjer på terminalen ved at bruge ekkokommandoen.
Trin # 3: Kørsel af Bash Script:
Start nu terminalen i Ubuntu 20.04, og kør derefter følgende kommando i den for at udføre Bash -scriptet, der er oprettet ovenfor:
bash ForEachLine.sh
Når denne kommando får bash -scriptet til at udføres, vil du være i stand til at se alle linjer i din tekstfil på din terminal som vist i følgende billede:
Metode # 2: Til at gemme alle læselinjer i en anden fil:
I denne metode har vi lidt ændret det Bash -script, der blev oprettet i metoden ovenfor for at gemme alle læselinjer i en ny tekstfil i stedet for at vise dem på terminalen. For at gøre dette skal du udføre nedenstående trin:
Trin 1: Ændring af Bash Script oprettet ovenfor og kørsel af det:
Åbn det Bash -script, du har oprettet i metoden ovenfor, og rediger det som vist på følgende billede. Vi har ganske enkelt tilføjet >> -symbolet efterfulgt af et nyt filnavn efter ekkokommandoen i den færdige blok. Denne ændring gemmer alle læselinjer i en ny tekstfil i stedet for at vise dem på terminalen. Kør nu Bash -scriptet igen via terminalen med bash -kommandoen efterfulgt af Bash -filnavnet. Denne gang, når Bash -scriptet kører, vil det oprette en ny tekstfil, hvis navn i dette tilfælde er NewFile.txt.
Trin # 2: Adgang til den nyoprettede tekstfil:
For at kontrollere, om alle læselinjer er gemt i den nye tekstfil, kan du ganske enkelt se indholdet af filen ved at køre følgende kommando i din terminal:
kat NewFile.txt
Outputtet vist på billedet herunder vil sikre dig, at alle læselinjer er blevet kopieret til den nye tekstfil.
Konklusion:
På denne måde kan du bruge hver linje i filen til at læse alle filernes linjer og derefter manipulere den med disse linjer. Vi har lige talt om de to grundlæggende scenarier i denne artikel, men du kan endda bruge denne loop til mere komplekse problemer.