Žargonu soubor definitionEdit

Žargonu Souboru verze 4.4.7 uvádí jako definici cat:

  1. chrlit celý soubor na obrazovku, nebo nějaký jiný výstup dřez bez pauzy (syn. výbuch).
  2. extension, Chcete-li vypsat velké množství dat na nepřipravený cíl nebo bez úmyslu pečlivě jej procházet. Použití: považováno za hloupé. Vzácné mimo unixové stránky. Viz také dd, BLT.,

Mezi Unix fanoušky, kočka(1), je považován za vynikající příklad toho, uživatelské rozhraní design, protože to přináší obsah souboru, aniž by taková podrobnost jako mezery nebo záhlaví mezi soubory, a proto, že nevyžaduje soubory, které se skládají z řádků textu, ale pracuje s jakýkoli typ dat.

mezi kritiky Unixu je cat (1)považován za kanonický příklad špatného designu uživatelského rozhraní, protože je žalostně nenápadný. To je mnohem častěji používán k výbuchu jeden soubor na standardní výstup, než zřetězit dva nebo více souborů., Jméno kočka pro bývalou operaci je stejně neintuitivní jako, řekněme, LISPOVA cdr.

Zbytečné použití catEdit

k Ničemu použít cat (UUOC) je common Unix žargonu pro příkazový řádek konstrukty, které pouze poskytují funkce, pohodlí pro uživatele. To je také označováno jako „zneužívání koček“. Aktivita fixačních instancí UUOC se někdy nazývá demoggifikace., Příklad společného cat zneužívání je uveden v zadání:

cat filename | command arg1 arg2 argn

To může být přepsána pomocí přesměrování standardního vstupu místo, v obou z následujících forem (první je více tradiční):

 command arg1 arg2 argn < filename <filename command arg1 arg2 argn

Mimo jiné výhody, vstupní přesměrování formy, aby příkaz k provedení náhodný přístup k souboru, vzhledem k tomu, že cat příklady nejsou., To je proto, že přesměrování formulář otevře soubor jako stdin soubor deskriptorů, který příkaz může plně přístup, zatímco cat formuláře jednoduše poskytuje data jako proud bajtů.

Další běžný případ, kde cat je zbytečné je, kde výchozí příkaz působící na stdin, ale bude číst ze souboru, pokud název souboru je uveden jako argument., To je případ pro mnoho běžných příkazů; tyto příklady

 cat "$file" | grep "$pattern" cat "$file" | less

místo toho může být zapsáno jako

 grep "$pattern" "$file" less "$file"

společný interaktivní používání cat pro jeden soubor je na výstupu obsah souboru na standardní výstup. Pokud je však výstup veden nebo přesměrován, cat není nutné.

cat napsáno s UUOC může být stále výhodné pro čitelnost důvodů, jako je čtení potrubím proud zleva doprava, může být jednodušší vymyslet., Také, jeden špatný používání přesměrování symbol „>“ místo „<“ (často sousedí na klávesnicích), může trvale vymazat obsah souboru, jinými slovy přepisování, a jeden způsob, jak se vyhnout, je použít cat s trubkami. Porovnat:

 command < in | command2 > out <in command | command2 > out

s:

cat in | command | command2 > out

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *