Tiedoston lukeminen rivi riviltä Bash -skriptissä

How Read File Line Line Bash Script

Miten kirjoittaisit Bash -komentosarjan, joka voi käsitellä tekstitiedoston rivi kerrallaan. Ensin tarvitset syntaksin ja lähestymistavan tiedoston lukemiseen rivi riviltä. Tämän lähestymistavan menetelmät on esitetty tässä opetusohjelmassa.



Oletetaan, että sinulla on tiedosto nimeltä company.txt minkä sisällön yritykset nimeävät. Tämä tiedosto sisältää seuraavan sisällön.



Company.txt
Samsung
Nokia
LG
Sinfonia
iphone

Esimerkki -1: Tiedoston sisällön lukeminen komentoriviltä

Oletetaan, että haluat lukea tiedoston, company.txt , rivi riviltä komentoriviltä ilman 'kissa' komento. Suorita seuraava komento suorittaaksesi tehtävän. sillä aikaa loop lukee tiedoston jokaisen rivin company.txt jokaisessa vaiheessa ja tallenna rivin sisältö $ rivi muuttuja, joka tulostetaan myöhemmin.



$sillä aikaa lukealinja;tehdä heitti pois $ rivi;tehty <company.txt

Esimerkki -2: Tiedoston sisällön lukeminen komentosarjan avulla

Luo bash -tiedosto ja lisää seuraava koodi lukemaan tietyn tiedoston sisältö. Täällä olemassa oleva tiedostonimi tallennetaan $ tiedostonimi muuttuja ja $ n muuttujaa käytetään pitämään kyseisen tiedoston rivinumeron arvo. Kuten edellinen esimerkki, sillä aikaa silmukkaa käytetään tämän tiedoston lukemiseen rivinumerolla.



#!/bin/bash
Tiedoston nimi='company.txt'
n=1
sillä aikaa lukealinja;tehdä
# lukee jokaisen rivin
heitti pois 'Rivi nro$ n:$ rivi''
n= $((n+1))
tehty < $ tiedostonimi

Suorita seuraava komento suorittaaksesi komentosarjan.

$lyödäreadfile1.sh

Juosta 'kissa' komento näppäimellä company.txt tiedoston alkuperäisen sisällön näyttämiseksi company.txt tiedosto.

$ cat company.txt

Esimerkki -3: Tiedostonimen välittäminen komentoriviltä ja tiedoston lukeminen

Luo bash -tiedosto ja lisää seuraava komentosarja. Tämä komentosarja ottaa tiedostonimen komentoriviargumentista. Ensimmäisen argumentin arvon lukee muuttuja $ 1, joka sisältää tiedostonimen luettavaksi. Jos tiedosto on olemassa nykyisessä paikassa, niin sillä aikaa loop lukee tiedoston rivi kerrallaan kuten edellinen esimerkki ja tulostaa tiedoston sisällön.

#!/bin/bash
Tiedoston nimi=$ 1
sillä aikaa lukealinja;tehdä
# lukee jokaisen rivin
heitti pois $ rivi
tehty < $ tiedostonimi

Suorita yllä oleva komentosarja työntekijä.txt tiedosto argumentin arvona. Tulos näyttää sisällön työntekijä.txt tiedosto poistamalla ylimääräistä tilaa. Voit näyttää kohteen alkuperäisen sisällön työntekijä.txt tiedosto käyttämällä 'kissa' komento.

$ bash readfile2.txt worker.txt
$ cat työntekijä.txt

Esimerkki - 4: Tiedoston lukeminen jättämällä poisviiva

Jos haluat lukea tiedoston jokaisen rivin jättämättä pois vinoviivan, sinun on käytettävä '-R' vaihtoehto lukukomennolla sillä aikaa silmukka.

#!/bin/bash
sillä aikaa lukea -rlinja;tehdä
# Jokaisen rivin lukeminen
heitti pois $ rivi
tehty <company2.txt

Luo tiedosto nimeltä company2.txt käänteisellä vinoviivalla ja suorita seuraava komento suorittaaksesi komentosarjan. Tulos näyttää tiedoston sisällön ilman vinoviivaa.

$lyödäreadfile3.sh

Tiedosto on luettava moniin ohjelmointitarkoituksiin. Voit esimerkiksi etsiä tai hakea tiettyä sisältöä helposti mistä tahansa tiedostosta lukemalla jokaisen rivin erikseen. Se on siis mikä tahansa ohjelmoinnin olennainen tehtävä. Tässä opetusohjelmassa on muutamia yksinkertaisia ​​esimerkkejä tiedoston lukemisesta bash -skriptillä. Nämä auttavat sinua saamaan käsityksen tiedoston sisällön lukemisesta rivi riviltä käyttämällä silmukkaa bash -skriptissä ja soveltamalla komentosarjaa tehokkaammin. Katso lisätietoja katsomalla video !