A look Command használata Linuxon

A Linux look parancs végigszáguld egy fájlon, és felsorolja az összes olyan sort, amely egy adott szóval vagy kifejezéssel kezdődik. De vigyázz! Különböző Linux-disztribúciókban eltérően viselkedik. Ez az oktatóanyag megmutatja, hogyan kell használni.

Az Ubuntu kinézete Command másként viselkedik

Egy egyszerű, de hasznos parancshoz a megjelenés minden bizonnyal elszabadult, amikor e cikkben kutattam. Két probléma volt: a kompatibilitás és a dokumentáció.

Ezt a cikket Ubuntu, Fedora és Manjaro segítségével ellenőriztük. look mindegyik disztribúcióhoz mellékelve volt, ami nagyszerű volt. A probléma az volt, hogy a viselkedés nem volt egyforma mindhárom esetében. Az Ubuntu verzió egészen más volt. Szerint a Ubuntu kézikönyvek, a viselkedésnek azonosnak kell lennie.

Végül rájöttem. megjelenés hagyományosan használja a bináris keresés, míg az Ubuntu look a lineáris keresés. A Bionic Beaver (18.04), a Cosmic Cuttlefish (18.10) és a Disco Dingo (19.04) Ubuntu kézikönyve mind azt írja, hogy az Ubuntu verzió bináris keresést használ, ami nem így van.

Ha megnézzük a helyi Ubuntu kézikönyvoldalt, azt látjuk, hogy egyértelműen kijelenti, hogy a megjelenésük lineáris keresést használ. Van egy parancssori opció, amellyel bináris keresésre kényszerítheti. A többi disztribúció egyik verziójában sem választható a keresési módok között.

man look

A kézikönyvoldalon lefelé görgetve azt a részt látjuk, amely a bináris keresés helyett lineárist használó megjelenési változatot írja le.

  PDF-ek egyesítése a PDFSam programmal Linuxon

A történet lényege, hogy először ellenőrizzük a helyi kézikönyvoldalakat.

Lineáris keresés versus bináris keresés

A bináris keresési módszer gyorsabb és hatékonyabb, mint a lineáris keresés. Ha nagy fájlokkal dolgozik, ez nagyon nyilvánvalóvá válik. A bináris keresés hátránya, hogy a fájlt rendezni kell. Ha nem szeretné rendezni a fájlt, rendezze be a másolatot, majd használja kinézettel.

Ezt ebben a cikkben máshol is bemutatjuk. Legyen tudatában annak, hogy a Fedora, Manjaro és szerintem a Linux világ többi részén is létre kell hoznia egy rendezett másolatot a fájlról, és ezzel kell dolgoznia.

Szavak telepítése

A kinézet bármilyen kiválasztott szövegfájllal, vagy a „words” helyi szótárfájllal működhet.

A Manjaro-n telepítenie kell a „word” fájlt. Használja ezt a parancsot:

sudo pacman -Syu words

Kinézet használata

Ebben a cikkben a szövegfájllal fogunk dolgozni Edward Lear „The Jumblies” című vers.

Nézzük meg a tartalmát ezzel a paranccsal:

less the-jumblies.txt

Íme a vers első része. Ne feledje, hogy Ubuntut használunk, így a fájl rendezetlen marad. A Fedora és a Manjaro esetében a fájl rendezett másolatával dolgoznánk, amivel ebben a cikkben később foglalkozunk.

Ha olyan sorokat keresünk, amelyek az „ők” szóval kezdődnek, megtudunk néhányat abból, amit a Jumblies-ek műveltek.

look They the-jumblies.txt

A look a következő sorok felsorolásával válaszol:

  Hogyan olvassunk képregényeket Linuxon a Peruse segítségével

Kimenet innen

A karakterbetűk figyelmen kívül hagyása

A kis- és nagybetűk közötti különbségek figyelmen kívül hagyásához használja a -f (kis- és nagybetűk figyelmen kívül hagyása) opciót. Ismét az „ők” szót használtuk keresőszóként, de ezúttal kisbetűvel írjuk.

look -f they the-jumblies.txt

Ezúttal az eredmények egy extra sort is tartalmaznak.

Kimenet innen

Az „ŐK” szóval kezdődő sor kimaradt az utolsó találati csoportból, mert csupa nagybetűvel van írva, és nem egyezik a keresési kifejezésünkkel, az „Ők”.

A kis- és nagybetűk figyelmen kívül hagyása lehetővé teszi, hogy a kitekintés belefoglalja az eredményekbe.

Megjelenés használata rendezett fájllal

Ha a Linux disztribúció olyan verziója van, amely követi a bináris keresés hagyományos viselkedését, akkor vagy rendeznie kell a fájlt, vagy dolgoznia kell annak rendezett másolatával.

Ismételjük meg a parancsot az „Ők” keresésére, de ezúttal a Manjaro-n.

Mint látható, nem érkezett vissza eredmény. De tudjuk, hogy a versben vannak olyan sorok, amelyek az „ők” szóval kezdődnek.

Készítsünk egy rendezett másolatot a fájlról. Ha a -f (kis- és nagybetűk figyelmen kívül hagyása) vagy a -d (csak alfanumerikus karakterek és szóközök) opciókat kívánja használni a megjelenéshez, akkor ezeket kell használnia a fájl rendezésekor.

A -o (output) opció lehetővé teszi annak a fájlnak a nevét, amelyhez hozzá kell adni a rendezett sorokat. Ebben a példában ez a „sorted.txt”.

sort -f -d the-jumblies.txt -o sorted.txt

Használjuk a look-ot a sorted.txt fájlon, majd használjuk az -f és -d opciókat.

  Kék képernyő hiba az NVIDIA illesztőprogramok telepítésekor? (RÖGZÍTETT)

Most azt az eredményt kaptuk, amit vártunk.

Csak a szóközöket és az alfanumerikus karaktereket vegye figyelembe

Hogy nézzenek, figyelmen kívül hagyjanak mindent, ami nem alfanumerikus karakter vagy szóközt, használja a -d (alfanumerikus) kapcsolót.

Lássuk, vannak-e olyan szavak, amelyek az „Ó”-val kezdődnek.

look -f oh the-jumblies.txt

Megtekintéssel nem adnak vissza eredményeket.

Próbáljuk újra, és mondjuk a look-nak, hogy az alfanumerikus karaktereken és szóközökön kívül semmi mást figyelmen kívül hagyjon. Ez azt jelenti, hogy a rendszer figyelmen kívül hagyja a karaktereket és szimbólumokat, például az írásjeleket.

look -f -d oh the-jumblies.txt

Ezúttal eredményt kapunk. Ezt a sort korábban nem találtuk, mert az idézőjel és a felkiáltójel megzavarta a keresést.

Kimenet innen

A befejező karakter megadása

Megadhatja, hogy a look egy adott karaktert használjon befejező karakterként. Általában a szóközt és a sorvéget használják záró karakterként.

A -t (karakter befejezése) opció lehetővé teszi, hogy megadjuk a használni kívánt karaktert. Ebben a példában az aposztróf karaktert fogjuk használni. Fordított perjellel kell idéznünk, hogy a megjelenés tudja, hogy nem egy karakterláncot nyitunk meg.

A keresett kifejezést is idézzük, mert szóközt tartalmaz. Két szót keresünk.

look -f -t ' "they call" the-jumblies.txt

A találatok megegyeznek a keresett kifejezéssel, amelyet a befejező karakterként használt aposztróf zár le.

Fájl nélküli megjelenés használata

Ha nem ad meg fájlnevet a parancssorban, nézze meg a uses-t a szavak fájl.

A parancs:

ezeket az eredményeket adja:

Ezek mind a „kör” szóval kezdődő szavak a fájlban.

ne nézz tovább

Csak ennyit kell nézni.

Ez nagyon egyszerű, ha tudja, hogy a különböző Linux-disztribúciók eltérő viselkedést mutatnak, és elérte, hogy a verziója bináris vagy lineáris keresést használ-e.