Hogyan kereshetek fájlt a Linux bash-ban?

Hogyan Kereshetek Fajlt A Linux Bash Ban



A fájlrendszer a legfontosabb minden operációs rendszerben, mert ez tárolja az összes adatot a fájlokban és mappákban különböző formátumokban. Mi a helyzet a fájlok keresésével a terminálhéjon keresztül néhány parancs használatával? Ha fogalmad sincs a bash keresésről, ez a cikk nagy segítségedre lesz. Megbeszéljük a bah fájlkereséshez szükséges egyszerű parancsokat. Kezdjük el. Tegyük fel, hogy van egy bash-fájlja, amely jelenleg az Ubuntu 20.04 otthoni munkakönyvtárában van tárolva. Egy aktuális munkakönyvtár összes tartalmát listázzuk az Ubuntu terminálhéján található „ls” utasítással. Lehetséges, hogy ugyanaz a névfájl más helyeken is megtalálható.

01. módszer: Keresse meg

Kezdjük a legalapvetőbb utasítással, a „locate”-vel, hogy név szerint keressük meg a fájlt a rendszerünkben. A „locate” utasítás „-c” opciója kifejezetten az adott fájl teljes számának lekérésére szolgál a rendszerben. Vessünk egy pillantást az első opciójára, a „-c”-re, amikor az utasításban használjuk a „new.sh” fájl nevével együtt. Összesen 5 ilyen nevű fájlt ad vissza.









Itt található a „locate” utasítás „-n” opciója, amellyel a felhasználó választása szerint megjelenítheti egy adott fájl rekordjainak számát a terminál képernyőjén. A megadott számú fájlrekord megjelenítéséhez meg kell említenie a számot ebben a parancsban. A saját könyvtárban ezt az utasítást az „n” opcióval és 1-es értékkel futtattuk, hogy egyetlen rekordot jelenítsen meg a „new.sh” fájl keresési eredményéhez. A fájl elérési útjának egyetlen rekordját adja vissza. Ez az útvonal lesz a legközelebb a kezdőkönyvtárhoz vagy a gyökérmappához, azaz a /home/Linux/new.sh.







Ha ezt az utasítást a frissített „3” számmal használjuk az „-n” opcióhoz a „new.sh” fájl keresési eredményének megjelenítéséhez, akkor összesen 3 rekordot ad vissza a shell képernyőn. Azt mutatja, hogy a fájl a Kuka mappában is található.



A „locate” parancs futtatásakor az „-n” 5-ös értékű opcióval 5 keresési rekordot kapunk a „new.sh” fájlhoz. Van egy másik fájl „new.sh.swp” névvel a könyvtárainkban. Ezenkívül ugyanaz a fájlnév található az Ubuntu fájlrendszerének „var” könyvtárában.

A „-b” opció a „locate” utasításban végrehajthatja a keresést a pontos névfájlra a könyvtárakból. Tehát a fájlnévvel együtt kell használnunk egyetlen fordított vesszővel, ahogy az ábra mutatja. Összesen 3 rekordot ad, mert ugyanaz a névfájl csak 3 helyen található.

A Linux „locate” utasítása az aktuális adatbázissal kapcsolatos információk lekérésére is használható. Használnod kell a '-S' opciót is, és visszaadja az adatbázis elérési útját, a rendszeren lévő könyvtárak és fájlok teljes számát, a fájlnevekben lévő bájtok teljes számát és a bájtok számát. hogy rekordjainkat a megjelenített módon tároljuk.

2. módszer: keresse meg

Linux rendszerünkben van egy „találj” utasítás, amellyel bármilyen fájlt megkereshetünk. Ezenkívül számos lehetőséget kínált a különböző eredmények megjelenítésére. Az első lehetőség a „-name” opció, amellyel olyan fájlt kereshet, amelynek neve dupla vesszőben van. Használhatja ezt az opciót egy adott könyvtár elérési útja mellett egy fájl kereséséhez. Ha nem szeretné használni az elérési utat, hagyja meg '.' ahogy lentebb tettük. Összesen 3 rekordot jelenített meg azonos nevű fájllal.

Az explicit elérési út segítségével is megvizsgálhatja a benne lévő fájlt. Itt megadtuk az „Asztali” mappa elérési útját. Megadja nekünk az egyetlen rekordot a „new.sh” fájlnév pontos egyezéséhez.

Tegyük fel, hogy egy fájlban szimbolikus hivatkozásokat szeretne keresni a fájlok „.sh” kiterjesztéséhez. Használnia kell a „-L” opciót, valamint az elérési utat és a „-name” opciót a parancsban. A névspecifikációban szereplő „*” az „összes” „.sh” kiterjesztésű bash fájlban való keresésre szolgál. Összesen 4 rekordot jelenít meg a képernyőn.

Ha a „/etc” elérési utat használja a „find” utasításban a „-L” opcióval, akkor sok rekordot ad vissza a bash fájlokhoz. Némelyikük bárki számára nyitva áll, néhány pedig nem megengedett.

Ugyanígy használtuk a „find” utasítást a „-L” opcióval, hogy megkeressük a rendszer összes „txt” fájlját. Sok rekordot visszaad a kijelzőnkre.

Itt jön egy másik lehetőség, a „-type”, amelyet a „find” utasításban használhatunk egy fájltípus, azaz fájl vagy könyvtár megadására. Ezzel az opcióval kerestük a „file” típusú bash fájlt, és egyetlen eredményt kaptunk, azaz a new.sh-t az Asztal mappájában.

Ha nem adja hozzá az elérési utat, akkor az alábbiak szerint fog keresni a könyvtárakban.

A „–type” opció használata az „f”-vel fájlnév nélkül szintén visszaadja az összes rejtett fájlt.

Az „l” használata a „-type” opciónál a szimbolikus hivatkozásokat adja vissza.

A „d” használata a „-type” opciónál a „find” utasításban az összes könyvtárat visszaadja.

Használhatja a „-size” opciót is, hogy meghatározott méretű fájlokat keressen a rendszeren.

Következtetés:

Ez az oktatóanyag két egyszerű, de elegáns módszert mutatott be bármely fájl keresésére a shell terminál használatával. Használtuk a „locate” és „find” utasításokat, valamint számos opciót a felhasználónk könnyebbé tétele és tanulása érdekében, például „-c”, „-n”, „-b”, „-type”, „-name”, „ -L” és még sok más. Reméljük, hogy ez korlátlan segítség lesz a bash új felhasználóinak.