Bash kroži po datotekah v imeniku

Bash Loop Through Files Directory



V Ubuntuju, vključno z Bashom, so zanke omogočile uporabo operacij na več datotekah. Zankanje je najučinkovitejša stvar, saj uporabniku omogoča, da z majhno kodno vrstico večkrat uporabi isto logiko za element.

Če želite razumeti koncept ponavljanja datotek v imeniku, potrebujete dostop do aplikacije in storitev Ubuntu. Ko imate določene privilegije, lahko delate samo z datotekami in imeniki.







Bash bi morali namestiti v operacijski sistem Ubuntu. V nekaterih namestitvah je privzeto nameščen pri posodabljanju paketov. Če je že nameščena, morate nadgraditi različico, ker mora biti nad 4. Če želite nadaljevati s trenutnim vodnikom, morate ohraniti različico nad 4. Če želite preveriti različico vnaprej nameščenega Bash-a v sistemu, uporabite ukaz na terminalu Ubuntu.



$Bash--verzija



Zato morate izvesti nekatere funkcije v datotekah in imenikih. Spodaj razložene ukaze lahko izvedete v katerem koli imeniku po vaši izbiri. Če smo natančni, je bolje ustvariti nov imenik, tako da bodo vse njegove lastnosti neposredno dostopne, ko ga odprete.





Prvi korak je ustvariti imenik. Vzeli smo vzorčno ime imenika abc. Ustvarite imenik z izvajanjem ukaza.

$mkdirabc



Po ustvarjanju imenika morate zdaj za to izvesti vse ukaze. Zato po ustvarjanju imenika preklopite na ta imenik. Uporabite spodnji ukaz:

$CDabc

Ko greste v imenik, zdaj z ukazom na dotik ustvarite nekaj datotek.

$dotikfile1.txt

Za ustvarjanje datoteke v Ubuntuju se uporabljajo številne metode. Poleg ukaza touch smo tukaj uporabili ukaz echo za ustvarjanje datoteke in skupno dodajanje vsebine v en sam ukaz:

$vrgel venLinux, ubuntu, Postgresql>file7.txt

Ta datoteka je ustvarjena v preprostem imeniku, ki se trenutno privzeto izvaja. Tako se ime novo ustvarjenega imenika ne doda z ukaznim pozivom. Datoteke lahko ustvarite tudi z obsegom in razširitvijo v ukazu na dotik.

$dotikmapa-{1..8}.txt

Z uporabo tega ukaza v novih datotekah razširitev .txt bodo ustvarjene z enim samim ukazom.

Po tem lahko zdaj prelistate novo ustvarjeni imenik. Prikažite imena datotek. Ker moramo prelistati datoteke v imeniku, potrebujemo zanko. Zanke so zelo učinkovite za uporabo, saj pridobijo podatke v krajšem času in zahtevajo manj vnosa. Tukaj bomo uporabili zanko for. Z uporabo te zanke bo vsako ime datoteke prikazano v naslednji vrstici.

$za mapa v *;naredi vrgel ven $ datoteko;Končano

* se uporablja za vse datoteke v tem imeniku. To omogoča, da zanka 'for' zajame vse datoteke. Če želite izpis natančen, lahko dodate nekaj izrazov z zvezdico. Na primer, 'datoteka-*' se uporablja za vse datoteke, ki se začnejo iz datoteke. In *.txt za pridobitev datotek z razširitvami .txt. Te primere bomo nadalje uporabili v članku.

Ta zanka bo delovala tako, da bo prenesla vse datoteke iz imenika in nato vse datoteke prikazala z ukazom echo. Tu znak $ predstavlja ime datoteke. Iz rezultata lahko vidite, da je prikazano vsako ime datoteke.

Po preverjanju datotek, ustvarjenih s prikazom imen datotek, je zdaj čas, da vrednost vnesete v datoteke, ker so ustvarjene datoteke prazne. To lahko storite ročno, tako da odprete vsako datoteko v urejevalniku besedila in nato zapišete podatke. Druga možnost je vnos podatkov v vsako datoteko z ukazom v terminalu. Toda za vnos podatkov v vsako datoteko z enim ukazom za vsako datoteko je potreben čas. Lahko pa to storite preprosto in skupaj z uporabo zanke for v enem ukazu.

$za mapa v *;naredi vrgel ven -2 $ datoteko nLinux Ubuntu> $ datoteko;Končano

Po izvedbi ukaza je bila vrednost vnesena v vsako datoteko, ki smo jo ustvarili. Če se uporablja z echo, bo zastavica '-e' ohranila novo vrstico v datoteki. Če si želite ogledati vnesene podatke, se pomaknite do imenika 'abc'. Zdaj odprite katero koli besedilno datoteko. Datoteka ni več prazna.

'$ File bo najprej prikazalo ime datoteke v datoteki, vnesene podatke pa si boste ogledali v drugi vrstici, ker se n uporablja za premik besed, uporabljenih po tem, v drugo vrstico. Prav tako lahko preverite vnesene podatke z ukazom.

$za mapa v *;naredi mačka $ datoteko;Končano

Ukaz Cat se uporablja za pridobivanje podatkov, prisotnih v vseh datotekah imenika.

Tako postopek vnosa podatkov kot pridobivanja lahko izvedete z enim ukazom.

$za mapa v *;naredi vrgel ven-In$ datoteko nprogramiranje basha> $ datoteko;mačka $ datoteko;Končano

Prvi korak je zapisati podatke v datoteko in jih nato prikazati. Ko izvedete ukaz, bo rezultat naslednji:

Vsaka datoteka vsebuje isto vrednost. To je zaradi zanke 'for'.

Poznamo zanko za pridobivanje podatkov in vstavljanje vrednosti itd., Vendar se zanka uporablja tudi za ustvarjanje varnostnih kopij. Te datoteke imajo na koncu razširitev .bak. Zdaj izvedite ukaz za varnostno kopiranje v lupini, da si ogledate varnostno kopijo vsake datoteke.

$za mapa v *;naredi cp $ datoteko $ datoteko.za;Končano;

Ključna beseda cp se uporablja za varnostno kopiranje vseh datotek. Zdaj si oglejte datoteke, za katere je uporabljen ta ukaz. Ukaz uporabljamo kot:

$ls-

Zdaj je iz izhoda vidno, da so prikazane podrobnosti datotek. Datum, ime datoteke, uporabniško ime in čas, ko je bila izbrisana. Prav tako imate natančno kopijo vsake datoteke.

Če želimo samo datoteke jpeg. To bomo uporabili v ukazu

$za mapa v *.jpeg;naredi vrgel ven $ datoteko;Končano

To bo prineslo samo imena slik.

Preprosta ugotovitev lahko opravlja isto funkcijo. Prinesel bo vse datoteke s pripono .sh.

$najti. - ime*sh

V zanki for bomo uporabili ključno besedo find.

$za mapa v *;naredinajti. Mapa.*;Končano

To bo pripeljalo vse datoteke v trenutni imenik. Ti imajo razširitve .bak, .jpeg, .txt. itd.

Zdaj, če želite videti ime vseh imeniških datotek in podatke v njih, to naredi tudi zanka 'for'.

$za mapa v *;naredi mapa $ datoteko;Končano

Zaključek

Preiskovanje datotek v katerem koli imeniku ni več težko, kot vemo, z uporabo zank v Bashu in izvajanjem v operacijskih sistemih Linux. Ta vadnica je popoln vodnik za ustvarjanje, dostop do in izvajanje operacij v imeniku z uporabo zanke 'for'.