Weboldal keresés

10 hasznos „locate” parancs gyakorlati példa Linux kezdők számára


Az egyik legrosszabb tapasztalat, amellyel a Linux platform legtöbb új felhasználója általában szembesül, az, hogy képtelen megtalálni a legegyszerűbb és mégis hatékonyabb eszközt a fájlok megkeresésére a rendszerében.

A Linux, mint szinte minden más operációs rendszer, számos mechanizmust használ a felhasználók keresési lekérdezésének megválaszolására. A felhasználók számára elérhető két legnépszerűbb fájlkereső segédprogram a keresés és a locate.

Fontos megjegyezni, hogy mindkét keresési folyamat rendkívül jól működik, ennek ellenére ennek a cikknek a középpontjában inkább a locate segédprogram áll majd, amely a kettő közül a kényelmesebb, mivel hatékonyabban használja. a felhasználók által bevitt lekérdezések gyors feldolgozásának módjai.

A locate segédprogram jobban és gyorsabban működik, mint a find megfelelője, mert ahelyett, hogy a fájlrendszerben keresne a fájlkeresés indításakor – a Something find is – a helymeghatározás egy adatbázison keresztül nézne át. Ez az adatbázis a fájlok bitjeit és részeit, valamint a megfelelő elérési utat tartalmazza a rendszeren.

Íme tíz egyszerű helymeghatározási parancs, amelyek segítségével hatékonyabbá teheti Linux-gépét.

1. Használja a locate Command parancsot

A locate parancs elindítása a fájl kereséséhez meglehetősen egyszerű és egyértelmű. Mindössze annyit kell tennie, hogy írja be:


$ locate LAMP-Setup.odt

/home/tecmint/LAMP-Setup.odt
/home/tecmint/TecMint.com/LAMP-Setup.odt

2. Korlátozza a keresési lekérdezéseket egy adott számra

A keresési eredményeket a kívánt számra korlátozhatja, hogy elkerülje a keresési eredmények redundanciáját a -n paranccsal.

Ha például csak 20 eredményt szeretne a lekérdezésekből, akkor írja be a következő parancsot:


$ locate "*.html" -n 20

/home/tecmint/.config/google-chrome/Default/Extensions/aapocclcgogkmnckokdopfmhonfmgoek/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/aohghmighlieiainnegkcijnfilokake/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/felcaaldnbdncclmgdcncolpebgiejap/1.1_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/forge.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/src/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/additional-feature.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/background.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/edit.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/help.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/options.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/purchase.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/upload.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/oauth2/oauth2.html
/home/tecmint/.config/google-chrome/Default/Extensions/nmmhkkegccagdldgiimedpiccmgmieda/1.0.0.2_0/html/craw_window.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_route_details.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/feedback.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/devices.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/index.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/offers.html

Az eredmények az első 20 fájlt jelenítik meg, amelyek a következővel végződnek: .html.

3. Jelenítse meg az egyező bejegyzések számát

Ha meg szeretné jeleníteni a „tecmint” fájl összes egyező bejegyzésének számát, használja a locate -c parancsot.


$ locate -c [tecmint]*

1550

4. Hagyja figyelmen kívül a kis- és nagybetűket érzékeny helymeghatározási kimeneteket

Alapértelmezés szerint a locate úgy van beállítva, hogy a lekérdezéseket kis- és nagybetűk érzékenyen dolgozza fel, ami azt jelenti, hogy a TEXT.TXT más eredményre mutat, mint a text.txt. .

Ha azt szeretné, hogy a locate parancs figyelmen kívül hagyja a kis- és nagybetűk érzékenységét, és a kis- és nagybetűs lekérdezések eredményeit is megjelenítse, adja meg a parancsokat a -i kapcsolóval.


$ locate -i *text.txt*

/home/tecmint/TEXT.txt
/home/tecmint/text.txt

5. Frissítse a mlocate adatbázist

Mivel a locate parancs egy mlocate nevű adatbázisra támaszkodik. Az említett adatbázist rendszeresen frissíteni kell, hogy a parancs segédprogram működjön
hatékonyan.

A mlocate adatbázis frissítéséhez használja az updatedb nevű segédprogramot. Meg kell jegyezni, hogy a megfelelő működéshez szuperfelhasználói jogosultságokra lesz szükség, root vagy sudo jogosultságként kell végrehajtani.


sudo updatedb

6. Csak a rendszerben lévő fájlokat jelenítse meg

Ha frissített mlocate adatbázissal** rendelkezik, a locate parancs továbbra is olyan fájlokat eredményez, amelyek fizikai másolatait törölték a rendszerből.

Annak elkerülése érdekében, hogy olyan fájlok eredményeit láthassa, amelyek nem jelennek meg a gépen a parancs lyukasztása idején, a locate-e parancsot kell használnia. A folyamat megkeresi a rendszert, hogy ellenőrizze a keresett fájl létezését, még akkor is, ha az még mindig megtalálható a mlocate.db fájlban.


$ locate -i -e *text.txt*

/home/tecmint/text.txt

7. Különítse el a kimeneti bejegyzéseket új sor nélkül

A locate parancs alapértelmezett elválasztója az újsor (\\n) karakter. Ha azonban más elválasztót szeretne használni, például az ASCII NUL-t, akkor ezt a -0 parancssori kapcsolóval is megteheti.


$ locate -i -0 *text.txt*

/home/tecmint/TEXT.txt/home/tecmint/text.txt

8. Tekintse át a helymeghatározási adatbázist

Ha kétségei vannak a mlocate.db aktuális állapotával kapcsolatban, a -S paranccsal könnyedén megtekintheti az adatbázis helymeghatározási statisztikáit.


$ locate -S

Database /var/lib/mlocate/mlocate.db:
	32,246 directories
	4,18,850 files
	2,92,36,692 bytes in file names
	1,13,64,319 bytes used to store database

9. Tiltsa le a hibaüzeneteket a Helymeghatározásban

Ha folyamatosan megpróbálja elérni a helyadatbázist, néha szükségtelen hibaüzenetek jelennek meg, amelyek azt jelzik, hogy nem rendelkezik a szükséges jogosultságokkal ahhoz, hogy root hozzáférést kapjon a mlocate.db fájlhoz, mivel Ön csak egy normál felhasználó, és nem szükséges Superuser.

Az üzenetek teljes megszüntetéséhez használja a -q parancsot.


locate "\*.dat" -q*

10. Válasszon egy másik mlocate helyet

Ha olyan lekérdezéseket ír be, amelyek nem találhatók meg az alapértelmezett mlocate adatbázisban, és választ szeretne kapni egy másik mlocate.db fájlról, amely valahol máshol található a rendszerében, akkor a locate parancsot egy másik mlocate adatbázishoz a rendszer egy másik részén a -d paranccsal.


locate -d <new db path> <filename>

Úgy tűnhet, hogy a locate parancs azon segédprogramok egyikének tűnhet, amelyek minden erőfeszítést megtesznek, amit kértél tőle, de valójában a folyamat hatékonyságának megőrzése érdekében a mlocate.db időnként információval kell táplálni. Ennek elmulasztása kissé használhatatlanná teheti a programot.