Väčšina používateľov Linuxu pozná príkaz cat Je to najjednoduchší spôsob, ako zobraziť obsah textových súborov v termináli. Postupom času sa však objavila inteligentnejšia a sofistikovanejšia alternatíva s názvom batKombinuje jednoduchosť s pokročilými funkciami, ktoré mi chýbajú. cat.
bat Nezobrazuje len text, ale pridáva automatické farbenie kódu, čísla riadkov a možnosť zlúčenia súborov pomocou nástrojov ako Git pohodlným a vizuálne príťažlivým spôsobom.
Mnoho používateľov, ktorí to raz vyskúšali, sa už nikdy nevrátilo. cat Potom, pretože ponúka zážitok z čítania a organizácie, ktorý prekonáva očakávania.
V nasledujúcich riadkoch si rozoberieme dôvody, ktoré k tomu viedli bat Prekonáva cat, a ako si ho môžete nainštalovať a používať, aby bola vaša práca v termináli rýchlejšia a prehľadnejšia.
Bat sa opisuje ako „mačka s krídlami“, čo je vtipná, ale trochu zavádzajúca analógia. Bat je nástroj s dvoma hlavnými účelmi: zvýrazňovanie syntaxe a označovanie rozdielov v gite.
Aby ste pochopili, ako optimálne používať príkaz bat, tieto príklady vám ukážu, ako príkaz funguje a čo vám umožňujú jeho rôzne možnosti.
zvýrazňovanie syntaxe bat v predvolenom nastavení
Pre demonštráciu základných funkcií programu bat ho jednoducho spustite na súbore so zdrojovým kódom vo vami zvolenom jazyku, napríklad:
bat tile.js
V prípade krátkeho súboru vám bat odošle výstup a vráti vás do príkazového riadka:
Hlavná vec, ktorú bat v tomto prípade robí, je pridanie zvýraznenia jazyka do súboru pomocou ANSI farieb. Dokáže to s mnohými jazykmi, od C cez HTML až po Markdown.
radu
Ak chcete zobraziť všetky jazyky podporované programom bat, použite možnosť --list-languages .
Pomocou možnosti --theme môžete zmeniť konkrétne farby, ktoré používa bat. Napríklad tu je začiatok predchádzajúceho súboru zvýraznený témou gruvbox-dark:
Pozor
Hoci sa bat opisuje ako „klon príkazu cat“, v skutočnosti to tak nie je. Príkaz cat môžete použiť mnohými spôsobmi, ale jeho pôvodným účelom bolo zreťazovanie (concatenate) súborov. cat zostáva na tento účel najlepším nástrojom, ale bat vylepšuje jeho použitie ako prehliadača súborov.
bat inteligentne používa pager
Ak je súbor príliš dlhý na to, aby sa zmestil do príkazového okna, bat použije stránkovač na zobrazenie interaktívnej verzie. Funguje to rovnako ako stránkovač, ktorý používate na zobrazenie manuálových stránok, za predpokladu, že je rovnaký. Predvolene bat použije menšiu veľkosť, ale máte dve možnosti použitia alternatívnej verzie:
Zmeňte premennú PAGER alebo použite BAT_PAGER, ak chcete, aby bat používal iný stránkovač ako ostatné programy.
Na zadanie príkazu (alebo cesty k programu) použite parameter –pager. Môžete to urobiť z príkazového riadku alebo v konfiguračnom súbore bat.
Môže vás mätúce alebo rušivé, že bat niekedy používa stránkovač, ale niekedy nie. V takom prípade môžete toto správanie zmeniť pomocou možnosti --paging:
bat --paging=always README.md
Poznámka
Existuje niekoľko rôznych spôsobov konfigurácie pagera pomocou príkazu bat a volieb --paging a --pager. Viac informácií nájdete v dokumentácii k príkazu bat (man bat).
čísla pálok v predvolenom nastavení
Bat tiež štandardne zobrazuje čísla riadkov vedľa súboru. Túto funkciu som na predchádzajúcich snímkach obrazovky pre jednoduchšie používanie zakázal; tu je príklad skutočného predvoleného správania:
Číslovanie riadkov je užitočné na sledovanie vašej polohy v súbore. Malý stránkovač tieto informácie štandardne nezobrazuje, hoci väčšina alternatív ich zobrazuje. Číslovanie riadkov je obzvlášť užitočné pri skúmaní zdrojového kódu a snahe nájsť chybu na konkrétnom riadku. Pomocou možnosti -p môžete číslovanie riadkov zakázať alebo pomocou možnosti -n zobraziť iba čísla riadkov.
Bat môže označovať čiary alebo rozsahy.
Číslovanie riadkov v príkaze bat je najefektívnejšie v kombinácii so zvýrazňovaním riadkov, ktoré môžete použiť na jednom riadku alebo v rozsahu. Voľba --highlight-line má niekoľko variácií; tu je príklad:
bat --highlight-line=7 --highlight-line=14:15 README.md
Toto zvýrazní riadok 7 a riadky 14-15 alternatívnou farbou pozadia:
Podobná možnosť, --line-range, umožňuje zobraziť iba určité riadky alebo rozsahy:
Samozrejme, môžete tieto dve funkcie skombinovať, aby ste zobrazili časť súboru a zároveň zvýraznili konkrétne riadky:
Bat funguje dobre s Gitom.
Ak používate bat na zobrazenie zdrojového kódu, poteší vás, že perfektne podporuje Git. Bat zobrazí zmeny v súbore, ak zistí, že sa nachádza v repozitári Git:
Bat zobrazí na ľavom okraji pre každý zmenený riadok známe symboly, ktoré označujú, či je nový (+), odstránený (-) alebo upravený (~). Príznak –diff (-d) môžete použiť na to, aby Bat zobrazil iba zmenené riadky a niektoré kontextové riadky okolo nich. Toto je skvelá funkcia na kontrolu zmien kódu alebo sledovanie vášho budúceho projektu.
Netopier sa správa inteligentne, ak sa nachádza v ceste.
Videli sme, ako bat používa zdravý rozum pri rozhodovaní o tom, či použiť stránkovač, ale nástroj sa môže pochváliť aj niektorými ďalšími šikovnými funkciami. Najužitočnejšia je najmä jeho schopnosť detekovať najvhodnejší typ výstupu.
Príkaz Bat to robí tak, že kontroluje, či sa jeho výstup odosiela do neinteraktívneho terminálu: či je napríklad smerovaný do iného procesu alebo do súboru. V týchto prípadoch pravdepodobne nebudete chcieť, aby bola syntax príkazu bat zvýraznená, takže skryje špeciálne farebné kódy, ktoré bežne výstupuje. V tomto režime sa príkaz správa ako príkaz cat, čím vypne všetky dekorácie vrátane čísel riadkov a zvýrazňovania rozsahu.
Stále môžete prinútiť príkaz bat vytvoriť formátovaný výstup, aj keď sa nachádza v rámci cesty. Toto je užitočné, ak viete, že príkaz, ktorému posielate výstup, dokáže spracovať farebné kódy ANSI, ako napríklad najbežnejší stránkovač, napríklad:
bat -f README.md | most
Voľba --force-colorization (-f) núti bat zachovať všetky farby a dekorácie, takže je opakom voľby --plain (-p).
Netopier funguje dobre aj s človekom
Keďže môžete nakonfigurovať stránkovač, ktorý man používa na zobrazenie inštrukcií v príkazoch Linuxu, môžete ho tiež nastaviť na používanie príkazu bat pre lepšie výsledky:
Ak to chcete urobiť, spustite príkaz man a nastavte príkaz MANPAGER takto:
MANPAGER="sh -c 'col -bx | bat -l man -p'" man ls
Tento príkaz si vyžaduje trochu vysvetlenia, pretože vykonáva niekoľko úloh. Najprv nastaví premennú MANPAGER a potom na konci spustí príkaz „man ls“. Táto syntax („príkaz NÁZOV=HODNOTA“) je jednoduchý spôsob, ako nastaviť premennú prostredia pre nasledujúci príkaz.
Hodnota MANPAGER je volanie sh (predvolené používateľské rozhranie) s prepínačom -c na spustenie príkazu. Tento príkaz následne spustí dva programy, col a bat, pričom výstup prvého programu sa presmeruje na vstup druhého. Program col pomáha vyčistiť niektoré formátovacie znaky a bat sa spúšťa s prepínačom -l man, aby sa na vyfarbenie použila syntax man. Prepínač -p používa jednoduchší štýl, ktorý je vhodný pre manuálové stránky.
radu
Premennú MANPAGER môžete natrvalo nastaviť v konfiguračnom súbore používateľa, aby ste sa vyhli tomu, aby ste sa museli učiť a písať celý tento proces!
Bat obsahuje niekoľko veľmi užitočných možností konfigurácie.
Pravdepodobne ste si už všimli, že bat je vysoko konfigurovateľný. Niektoré z jeho možností sú užitočné, napríklad --list-languages. Na zobrazenie umiestnenia konfiguračného súboru bat môžete použiť napríklad --config-file.
Ak hľadáte inú farebnú schému (každý máme svoje obľúbené), vyskúšajte možnosť --list-themes. Je zaujímavé, že tento výstup používa dekorácie a farby, ktoré môžete vypnúť pomocou štandardných možností:
Nástroj tiež podporuje niekoľko jednoduchých možností na ovládanie špecifických detailov formátovania, čo vám umožňuje jemne doladiť jeho výstup. Použite „–tabs n“ na úpravu šírky tabulátorov v medzerách, „–chop-long-lines“ na skrátenie všetkých riadkov dlhších ako šírka obrazovky a „–squeeze-blank“ na kompresiu prázdnych riadkov na jeden riadok.
Bat je jedným z rastúceho počtu nástrojov príkazového riadka systému Linux napísaných v jazyku Rust. Tento ekosystém podporuje generáciu vizuálne bohatých, interaktívnych aplikácií s používateľským rozhraním, ktoré spracovávajú tradičné príkazy, a Bat je skvelým doplnkom k sade nástrojov systému Linux.
Ak sa spoliehate na cat Denne na prezeranie súborov, skúsenosti bat Bude to jasný posun v spôsobe, akým interagujete s textom v termináli. Nezmení to, na čo ste zvyknutí, ale skôr pridá to, čo na začiatku chýbalo.
Od vyfarbovania kódu až po integráciu s Gitom ponúka bat Kombinácia krásy a funkčnosti, vďaka ktorej je používanie Linuxu pohodlnejšie a príjemnejšie.
Vyskúšajte si to sami a možno sa budete čudovať, ako ste bez toho doteraz mohli fungovať.

















