Jargon file definitionEdit
Ammattikieltä Tiedoston versio 4.4.7 luettelot tämä määritelmä cat
:
- syöstä koko tiedoston näytön tai jokin muu tuotos pesuallas ilman taukoa (syn. räjähdys).
- laajennettuna, dumpata suuria määriä tietoja valmistelemattomaan kohteeseen tai ilman aikomusta selailla sitä huolellisesti. Käyttö: pidetään typeränä. Harvinaisia Unix-sivustojen ulkopuolella. Katso myös dd, BLT.,
Joukossa Unix-fanit, kissa(1) pidetään erinomainen esimerkki user-interface design, koska se tarjoaa tiedoston sisältö ilman, kuten monisanaisuus, kuten väli-tai-otsakkeiden välillä tiedostoja, ja, koska se ei vaadi tiedostot koostuvat riviä tekstiä, mutta toimii tahansa tiedot.
Unix-kriitikoiden keskuudessa kissaa(1) pidetään kanonisena esimerkkinä huonosta käyttöliittymäsuunnittelusta sen valitettavan esteettömän nimen vuoksi. Sitä käytetään paljon useammin yhden tiedoston räjäyttämiseen standardilähtöön kuin kahden tai useamman tiedoston yhdistämiseen., Entisen operaation nimi kissa on aivan yhtä älytön kuin vaikkapa Lispin cdr.
Turha käyttö catEdit
Turha käyttää kissa (UUOC) on yhteinen Unix ammattikieltä command line rakenteita, jotka tarjoavat ainoastaan funktio mukavuutta käyttäjälle. Tästä käytetään myös nimitystä”kissan väärinkäyttö”. UUOC: n kiinnitystapausten toimintaa kutsutaan joskus demoggifioinniksi., Esimerkiksi yhteinen cat
väärinkäyttö on annettu palkinto:
cat filename | command arg1 arg2 argn
Tämä voidaan kirjoittaa toisin käyttäen uudelleenohjaus stdin sen sijaan, seuraavissa muodoissa (ensimmäinen on enemmän perinteinen):
command arg1 arg2 argn < filename <filename command arg1 arg2 argn
Beyond muita etuja, input uudelleenohjaus muodot mahdollistavat komento suorittaa random access tiedosto, kun taas cat
esimerkkejä ei ole., Tämä johtuu siitä, että uudelleenohjaus lomake avautuu tiedosto, kuten stdin-tiedosto avainsana komento, joka voi täysin käyttää, kun cat
lomake yksinkertaisesti tarjoaa tiedot, kuten virta tavua.
Toinen yleinen tapaus, jossa cat
on tarpeetonta on, jos komento on oletuksena toimivat stdin, mutta on lukea tiedosto, jos tiedostonimi on annettu argumenttina., Tämä koskee monia yhteisiä komentoja; seuraavassa esimerkkejä
cat "$file" | grep "$pattern" cat "$file" | less
voi sen sijaan olla kirjoitettu
grep "$pattern" "$file" less "$file"
yhteinen vuorovaikutteinen käyttö cat
yhden tiedoston tuotoksen sisällön tiedoston vakiotulosteeseen. Kuitenkin, jos lähtö johdetaan tai ohjataan, cat
on tarpeetonta.
cat
kirjoitettu UUOC voisi olla vielä parempi luettavuus syistä, kuten lukeminen johdetaan virta vasemmalta oikealle saattaa olla helpompi käsitteellistää., Myös, yksi väärä käyttö uudelleenohjaus symboli ”>” eikä ”<” (usein viereisen koskettimissa) voi pysyvästi poistaa tiedoston sisällön, toisin sanoen turpiin, ja yksi tapa välttää tämä on käyttää cat
putket. Vertaa:
command < in | command2 > out <in command | command2 > out
kanssa.
cat in | command | command2 > out