Bash loop läbi kataloogis olevate failide

Bash Loop Through Files Directory



Ubuntus, sealhulgas Bashis, on silmused võimaldanud toiminguid rakendada mitmele failile. Loopimine on kõige tõhusam, kuna see võimaldab kasutajal väikese koodirea abil üksusele sama loogikat korduvalt rakendada.

Kataloogis olevate failide ülekandmise mõiste mõistmiseks vajate juurdepääsu Ubuntu rakendusele ja teenustele. Kui teil on teatud privileegid, saate töötada ainult failide ja kataloogidega.







Oleksite pidanud installima Bashi Ubuntu operatsioonisüsteemi. Mõnes installis installitakse see vaikimisi pakettide värskendamiseks. Kui see on juba installitud, peate selle versiooni täiendama, kuna see peab olema üle 4. Praeguse juhendi jätkamiseks peate hoidma versiooni ülalpool. 4. Oma süsteemis eelinstallitud Bashi versiooni kontrollimiseks kasutage käsk Ubuntu terminalis.



$Bash--versioon



Nii et peate failide ja kataloogide puhul täitma mõningaid funktsioone. Allpool kirjeldatud käske saate täita mis tahes teie valitud kataloogis. Kuid täpsuse huvides on parem luua uus kataloog, nii et kõik selle otse kuuluvad selle avamisel hõlpsasti juurde.





Esimene samm on kataloogi loomine. Oleme võtnud kataloogi abc näidisnime. Looge kataloog käsu täitmisega.

$mkdirabc



Pärast kataloogi loomist peate nüüd täitma kõik selle käsud. Nii et pärast kataloogi loomist minge sellele kataloogile. Kasutage allpool viidatud käsku:

$CDabc

Pärast kataloogi minemist looge nüüd puutetundliku käsu abil mõned failid.

$puudutadafail1.txt

Faili loomiseks Ubuntus kasutatakse palju meetodeid. Lisaks puudutuskäsklusele kasutasime siin kaja käsku faili loomiseks ja selle sisu ühiseks lisamiseks ühe käsuga:

$viskas väljaLinux, ubuntu, Postgresql>fail7.txt

See fail on loodud lihtsas kataloogis, mis töötab vaikimisi. Seega ei lisata käsureale vastloodud kataloogi nime. Faile saate luua ka puutekäsuga vahemiku ja laienduse abil.

$puudutadafail-{1..8}.txt

Kasutades seda käsku uutes failides .txt laiendid luuakse ühe käsuga.

Pärast seda saate nüüd luua vastloodud kataloogi. Kuva failinimed. Kuna peame kataloogis olevaid faile läbi loopima, vajame tsüklit. Loopid on väga tõhusad kasutamiseks, kuna need toovad andmed lühema ajaga, nõudes vähem sisendit. Siin kasutame for silmust. Seda tsüklit kasutades kuvatakse iga faili nimi järgmisel real.

$eest faili sisse *;teha viskas välja $ fail;tehtud

* kasutatakse kõigi selles kataloogis olevate failide jaoks. See võimaldab silmusel „eest” haarata kõik failid. Kuid väljundi täpsustamiseks võite tärniga lisada mõned terminid. Näiteks kasutatakse faili „*” kõigi failide puhul, mis algavad failist. Ja *.txt failide toomiseks, millel on laiendid .txt. Kasutame neid näiteid artiklis edasi.

See tsükkel töötab nii, et see toob kõik failid kataloogist ja kuvab seejärel kõik failid käsu echo kaudu. Märk $ tähistab siin faili nime. Tulemusest näete, et iga failinimi on kuvatud.

Pärast failide nimede kuvamisega loodud failide kontrollimist on nüüd aeg failidesse väärtus sisestada, kuna loodud failid on tühjad. Seda saab teha käsitsi, avades iga faili tekstiredaktoris ja kirjutades seejärel andmed. Teine võimalus on sisestada andmed igasse faili terminali käsu kaudu. Kuid andmete sisestamine igasse faili nõuab iga faili ühe käsu kaudu aega. Kuid seda saab teha lihtsalt ja ühiselt, kasutades tsüklit ühes käsus.

$eest faili sisse *;teha viskas välja -2 $ fail nLinux Ubuntu> $ fail;tehtud

Pärast käsu täitmist on väärtus sisestatud igasse meie loodud faili. Kui kasutatakse koos kajaga, säilitab lipp „-e” faili uue rea. Sisestatud andmete vaatamiseks saate navigeerida kataloogi „abc”. Nüüd avage mis tahes tekstifail. Fail pole enam tühi.

„Fail $ näitab failis kõigepealt failinime ja teie sisestatud andmete eelvaade kuvatakse teisel real, kuna n kasutatakse pärast seda kasutatavate sõnade teisele reale nihutamiseks. Saate kontrollida ka käsu kaudu sisestatud andmeid.

$eest faili sisse *;teha kass $ fail;tehtud

Cat käsku kasutatakse kõigi kataloogi failide andmete toomiseks.

Nii andmete sisestamise kui ka toomise protseduuri saab teha ühe käsuga.

$eest faili sisse *;teha viskas välja-Ja$ fail nbash programmeerimine> $ fail;kass $ fail;tehtud

Esimene samm on andmete kirjutamine faili ja seejärel kuvamine. Käsu täitmisel on väljund järgmine:

Iga fail sisaldab sama väärtust. Selle põhjuseks on tsükkel „jaoks”.

Me teame silmust andmete hankimiseks ja väärtuste sisestamiseks jne, kuid tsüklit kasutatakse ka varukoopiate loomiseks. Nende failide lõpus on laiend .bak. Nüüd käivitage iga faili varukoopia nägemiseks kestas varukoopia.

$eest faili sisse *;teha cp $ fail $ fail. taga;tehtud;

Märksõna cp kasutatakse kõigi failide varundamiseks. Nüüd, et näha faile, millele see käsk on rakendatud. Me kasutame käsku järgmiselt:

$ls-

Nüüd on väljundist näha, et näidatakse failide üksikasju. Kuupäev, failinimi, kasutajanimi ja kellaaeg, millal see kustutati. Lisaks on teil igast failist täpne koopia.

Kui me tahame ainult jpeg -faile. Me kasutame seda käsus

$eest faili sisse *.jpeg;teha viskas välja $ fail;tehtud

See toob ainult piltide nimed.

Sama funktsiooni saab täita ka lihtne leid. See toob alla kõik failid laiendiga .sh.

$leida. - nimi*sh

Kasutame silmuse jaoks märksõna leid.

$eest faili sisse *;tehaleida. Fail.*;tehtud

See viib kõik failid praegusesse kataloogi. Nende laiendid on .bak, .jpeg, .txt. jne.

Nüüd, kui soovite näha kõigi kataloogifailide ja nende sees olevate andmete nime, teeb seda ka tsükkel „eest”.

$eest faili sisse *;teha faili $ fail;tehtud

Järeldus

Failide sirvimine mis tahes kataloogis pole enam keeruline, nagu me teame, kasutades Bashi silmuseid ja toimides Linuxi opsüsteemides. See õpetus on täielik juhend kataloogi toimingute loomiseks, neile juurdepääsuks ja nende sooritamiseks, kasutades silmust 'jaoks'.