Jargon fișier definitionEdit
Jargonul Fișier versiune 4.4.7 liste de acest fel definiția cat
:
- Să arunce un întreg fișier pe ecran sau o altă ieșire chiuveta fără pauză (syn. explozie).
- prin extensie, pentru a arunca cantități mari de date la o țintă nepregătită sau fără intenția de a o naviga cu atenție. Utilizare: considerat o prostie. Rare în afara site-uri Unix. A se vedea, de asemenea, dd, BLT.,printre fanii Unix, cat (1) este considerat un exemplu excelent de design al interfeței cu utilizatorul, deoarece oferă conținutul fișierului fără o astfel de verbozitate ca spațierea sau anteturile între fișiere și deoarece nu necesită ca fișierele să fie formate din linii de text, ci funcționează cu orice fel de date.
printre criticii Unix, cat (1) este considerat exemplul canonic de design rău interfață de utilizator, din cauza numelui său extrem de nevăzut. Este mult mai des folosit pentru a distruge un singur fișier la ieșire standard decât să concateneze două sau mai multe fișiere., Numele cat pentru fosta operațiune este la fel de neintuitiv ca, să zicem, cdr-ul lui LISP.
Inutil utilizarea catEdit
Inutil utilizarea de pisica (UUOC) este common Unix jargon pentru linia de comandă constructe, care oferă doar o funcție de confort pentru utilizator. Acest lucru este denumit și „abuz de pisică”. Activitatea de fixare a instanțelor UUOC este uneori numită demoggificare., Exemplu de comun cat
abuz este dat în atribuirea:
cat filename | command arg1 arg2 argn
Acest lucru poate fi rescris folosind redirecționare de la stdin în schimb, într-una din următoarele forme (prima este mult mai tradițională):
command arg1 arg2 argn < filename <filename command arg1 arg2 argn
Dincolo de alte beneficii, intrare redirecționarea forme permit comandă pentru a efectua cu acces aleator la dosar, întrucât cat
exemple nu., Acest lucru este pentru că redirecționarea forma deschide fișierul ca stdin descriptor de fisier care comanda poate accesa pe deplin, în timp ce cat
forma pur și simplu oferă date ca un flux de octeți.
un Alt caz comun unde cat
este necesar este în cazul în care o comandă implicit de operare pe stdin, dar va citi dintr-un fișier, dacă numele fișierului este dat ca argument., Acesta este cazul pentru multe comenzi comune; următoarele exemple
cat "$file" | grep "$pattern" cat "$file" | less
poate fi scris ca
grep "$pattern" "$file" less "$file"
Un comun utilizarea interactivă a cat
pentru un singur fișier este de la ieșire conținutul unui fișier standard de ieșire. Cu toate acestea, dacă ieșirea este dirijată sau redirecționată, cat
nu este necesară.
cat
scris cu UUOC ar putea fi în continuare preferat pentru lizibilitate motive, ca citirea unei conducte de flux de la stânga la dreapta ar putea fi mai ușor de a conceptualiza., De asemenea, o utilizare greșită de simbolul redirecționare „>” în loc de „<” (de multe ori adiacente pe tastaturi) poate șterge definitiv conținutul unui fișier, în alte cuvinte platesti, și o modalitate de a evita acest lucru este de a utiliza cat
cu conducte. Compara:
command < in | command2 > out <in command | command2 > out
cu:
cat in | command | command2 > out