Jargon file definitionEdit

Ammattikieltä Tiedoston versio 4.4.7 luettelot tämä määritelmä cat:

  1. syöstä koko tiedoston näytön tai jokin muu tuotos pesuallas ilman taukoa (syn. räjähdys).
  2. 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

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *