Anta at du har en fil som heter company.txt hvilket innhold bedriftens navn er. Denne filen inneholder følgende innhold.
Company.txt
Samsung
Nokia
LG
Symfoni
iphone
Eksempel -1: Lese filinnhold fra kommandolinjen
Anta at du vil lese filen, company.txt , linje for linje fra kommandolinjen uten 'katt' kommando. Kjør følgende kommando for å utføre oppgaven. samtidig som loop vil lese hver linje fra filen company.txt i hvert trinn og lagre innholdet i linjen i $ linje variabel som skrives ut senere.
$samtidig som leselinje;gjøre kastet ut $ linje;gjort <company.txt
Eksempel -2: Lese filinnhold ved hjelp av skript
Lag en bash -fil og legg til følgende kode for å lese innholdet i en bestemt fil. Her er et eksisterende filnavn lagret i $ filnavn variabel og $ n variabel brukes til å beholde verdien av linjenummeret til filen. Som forrige eksempel, samtidig som loop brukes til å lese denne filen med linjenummer.
#!/bin/bash
filnavn='company.txt'
n=1
samtidig som leselinje;gjøre
# leser hver linje
kastet ut 'Linjenr.$ n:$ linje'
n= $((n+1))
gjort < $ filnavn
Kjør følgende kommando for å utføre skriptet.
$bashreadfile1.shLøpe 'katt' kommando med company.txt filen for å vise det opprinnelige innholdet i company.txt fil.
$ cat company.txt
Eksempel -3: Passerer filnavn fra kommandolinjen og leser filen
Lag en bash -fil og legg til følgende skript. Dette skriptet tar filnavnet fra kommandolinjeargumentet. Den første argumentverdien leses av variabelen $ 1 som vil inneholde filnavnet for lesing. Hvis filen finnes på den nåværende plasseringen samtidig som loop vil lese filen linje for linje som forrige eksempel og skrive ut filinnholdet.
#!/bin/bashfilnavn=$ 1
samtidig som leselinje;gjøre
# leser hver linje
kastet ut $ linje
gjort < $ filnavn
Kjør skriptet ovenfor med ansatt.txt fil som argumentverdi. Utgangen vil vise innholdet i ansatt.txt fil ved å fjerne ekstra plass. Du kan vise det opprinnelige innholdet i ansatt.txt filen ved å bruke 'katt' kommando.
$ bash readfile2.txt ansatt.txt$ katt ansatt. txt
Eksempel - 4: Lese fil ved å utelate tilbakeslagsslipp
Hvis du vil lese hver linje i en fil ved å utelate skråstrek, må du bruke '-R' alternativ med lese kommando i samtidig som Løkke.
#!/bin/bashsamtidig som lese -rlinje;gjøre
# Leser hver linje
kastet ut $ linje
gjort <company2.txt
Lag en fil med navnet company2.txt med omvendt skråstrek og kjør følgende kommando for å utføre skriptet. Utgangen viser filinnholdet uten tilbakeslag.
$bashreadfile3.sh
Du må lese filen for mange programmeringsformål. For eksempel kan du enkelt søke eller matche et bestemt innhold fra en fil ved å lese hver linje separat. Så det er en viktig oppgave for enhver programmering. Noen enkle eksempler på lesing av filer i bash -skript er vist i denne opplæringen. Disse vil hjelpe deg med å få ideen om å lese filinnhold linje for linje ved å bruke loop i bash script og bruke i scriptet mer effektivt. For mer informasjon se videoen !