Bash petlje kroz datoteke u direktoriju

Bash Loop Through Files Directory



U Ubuntuu, uključujući Bash, petlje su omogućile primjenu operacija na više datoteka. Petlja je najučinkovitija stvar jer omogućuje korisniku da primjenjuje istu logiku na stavku uzastopno koristeći mali kodni redak.

Da biste razumjeli koncept ponavljanja datoteka u direktoriju, potreban vam je pristup Ubuntu aplikaciji i uslugama. Kad imate neke privilegije, možete raditi samo s datotekama i direktorijima.







Trebali ste instalirati Bash na Ubuntu operativni sustav. U nekim se instalacijama prema zadanim postavkama instalira pri ažuriranju paketa. Ako je već instalirana, morate nadograditi verziju jer mora biti iznad 4. Da biste nastavili s trenutnim vodičem, morate zadržati verziju iznad 4. Da biste provjerili verziju unaprijed instaliranog Basha u vašem sustavu, koristite naredbu na terminalu Ubuntu.



$Bash--verzija



Dakle, morate izvršiti neke funkcije na datotekama i direktorijima. Možete izvršiti dolje objašnjene naredbe u bilo kojem direktoriju po vašem izboru. No, da budemo precizni, poželjno je stvoriti novi direktorij kako bi svi njegovi sadržaji bili izravno dostupni kada ga otvorite.





Prvi korak je stvaranje direktorija. Uzeli smo uzorak naziva direktorija abc. Izradite naredbu izvršavanjem naredbe.

$mkdirabc



Nakon stvaranja direktorija, sada morate izvršiti sve naredbe nad tim. Zato se nakon stvaranja imenika prebacite na taj direktorij. Upotrijebite dolje navedenu naredbu:

$CDabc

Nakon odlaska u direktorij, sada stvorite neke datoteke pomoću naredbe touch.

$dodirfile1.txt

Za stvaranje datoteke u Ubuntuu koriste se mnoge metode. Osim naredbe touch, ovdje smo koristili naredbu echo za stvaranje datoteke i zajednički dodavanje sadržaja u jednu naredbu:

$izbacitiLinux, ubuntu, Postgresql>file7.txt

Ova je datoteka stvorena u jednostavnom direktoriju koji je trenutno pokrenut prema zadanim postavkama. Dakle, naziv novostvorenog direktorija se ne dodaje naredbenom retku. Datoteke možete stvoriti i pomoću raspona i proširenja u naredbi za dodir.

$dodirdatoteka-{1..8}.txt

Korištenjem ove naredbe u novim datotekama .txt ekstenzije će se stvoriti pomoću jedne naredbe.

Nakon toga sada možete proći kroz novostvoreni direktorij. Prikažite nazive datoteka. Kako moramo pregledavati datoteke prisutne u direktoriju, potrebna nam je petlja. Petlje su vrlo učinkovite za upotrebu jer dohvaćaju podatke u manje vremena, zahtijevajući manje unosa. Ovdje ćemo koristiti for petlju. Korištenjem ove petlje, svaki naziv datoteke bit će prikazan u sljedećem retku.

$za datoteka u *;čini izbaciti $ datoteku;učinjeno

* koristi se za sve datoteke prisutne u ovom direktoriju. To omogućuje 'for' petlji da preuzme sve datoteke. No kako bi ispis bio precizan, možete dodati neke pojmove sa zvjezdicom. Na primjer, 'datoteka-*' koristi se za sve datoteke koje počinju od datoteke. I *.txt za dohvaćanje datoteka s nastavcima .txt. Ove ćemo primjere dalje koristiti u članku.

Ova će petlja funkcionirati tako da će dohvatiti sve datoteke iz direktorija, a zatim prikazati sve datoteke putem naredbe echo. Ovdje znak $ predstavlja naziv datoteke. Iz rezultata možete vidjeti da je prikazan svaki naziv datoteke.

Nakon provjere datoteka stvorenih prikazivanjem naziva datoteka, sada je vrijeme da unesete vrijednost u datoteke jer su stvorene datoteke prazne. To se može učiniti ručno otvaranjem svake datoteke u uređivaču teksta, a zatim upisivanjem podataka. Druga je mogućnost unos podataka u svaku datoteku putem naredbe na terminalu. No, potrebno je vrijeme za unos podataka u svaku datoteku putem jedne naredbe za svaku datoteku. No to se može učiniti jednostavno i kolektivno korištenjem for loop u jednoj naredbi.

$za datoteka u *;čini izbaciti -2 $ datoteku nLinux Ubuntu> $ datoteku;učinjeno

Nakon izvršavanja naredbe, vrijednost je unijeta u svaku datoteku koju smo stvorili. Kada se koristi s echoom, zastavica '-e' će sačuvati novi redak u datoteci. Da biste vidjeli unesene podatke, možete se pomaknuti do direktorija 'abc'. Sada otvorite bilo koju tekstualnu datoteku. Datoteka više nije prazna.

'$ File će prvo prikazati naziv datoteke u datoteci, a podaci koje ste unijeli pregledat će se u drugom retku jer se n koristi za prebacivanje riječi korištenih nakon ovoga u drugi redak. Također možete provjeriti podatke unesene naredbom.

$za datoteka u *;čini mačka $ datoteku;učinjeno

Cat naredba koristi se za dohvaćanje podataka prisutnih u svim datotekama direktorija.

Postupak unosa podataka i njihova dohvaćanja može se obaviti jednom naredbom.

$za datoteka u *;čini izbaciti-I$ datoteku nbaš programiranje> $ datoteku;mačka $ datoteku;učinjeno

Prvi je korak zapisati podatke u datoteku, a zatim ih prikazati. Kada izvršite naredbu, izlaz će biti sljedeći:

Svaka datoteka sadrži istu vrijednost. To je zbog petlje ‘for’.

Znamo petlju za dohvaćanje podataka i umetanje vrijednosti itd., Ali se petlja koristi i za stvaranje sigurnosnih kopija. Ove datoteke na kraju imaju nastavak .bak. Sada izvedite naredbu sigurnosnog kopiranja u ljusci kako biste vidjeli sigurnosnu kopiju svake datoteke.

$za datoteka u *;čini k.č $ datoteku $ datoteku.iza;učinjeno;

Ključna riječ cp koristi se za izradu sigurnosnih kopija svih datoteka. Sada da vidimo datoteke na koje se ova naredba primjenjuje. Naredbu koristimo kao:

$ls- the

Sada je iz izlaza vidljivo da su prikazani detalji datoteka. Datum, naziv datoteke, korisničko ime i vrijeme brisanja. Također, imate točnu kopiju svake datoteke.

Ako želimo samo jpeg datoteke. To ćemo koristiti u naredbi

$za datoteka u *.jpeg;čini izbaciti $ datoteku;učinjeno

To će donijeti samo nazive slika.

Jednostavno otkriće također može obavljati istu funkciju. Dohvatit će sve datoteke s nastavkom .sh.

$pronaći. - Ime*š

Koristit ćemo ključnu riječ find u for petlji.

$za datoteka u *;činipronaći. Datoteka.*;učinjeno

To će sve datoteke dovesti u trenutni direktorij. Oni imaju proširenja .bak, .jpeg, .txt. itd.

Sada, ako želite vidjeti naziv svih datoteka direktorija i podatke unutar njih, to također radi petlja ‘for’.

$za datoteka u *;čini datoteka $ datoteku;učinjeno

Zaključak

Ponavljanje datoteka u bilo kojem direktoriju više nije teško, kao što znamo, korištenje petlji u Bashu i izvođenje na Linux operativnim sustavima. Ovaj je vodič potpuni vodič za stvaranje, pristup i izvođenje operacija na imeniku pomoću petlje 'for'.