Jargon file definitionEdit

het Jargon File version 4.4.7 geeft dit weer als de definitie van cat:

  1. om een volledig bestand naar het scherm of een andere uitvoer te spuwen zonder pauze (syn. Blast).
  2. bij uitbreiding, om grote hoeveelheden gegevens te dumpen bij een onvoorbereid doel of zonder de intentie om er zorgvuldig door te bladeren. Gebruik: beschouwd als dom. Zeldzame externe Unix-sites. Zie ook dd, BLT.,

onder Unix fans wordt cat(1) beschouwd als een uitstekend voorbeeld van het ontwerp van de gebruikersinterface, omdat het de inhoud van het bestand levert zonder zo ‘ n grootheid als spatiëring of headers tussen de bestanden, en omdat het niet vereist dat de bestanden bestaan uit regels tekst, maar werkt met alle soorten gegevens.

onder Unix-critici wordt cat(1) beschouwd als het canonieke voorbeeld van slecht gebruikersinterface-ontwerp, vanwege zijn jammerlijk onopvallende naam. Het wordt veel vaker gebruikt om een enkel bestand naar standaarduitvoer te blazen dan om twee of meer bestanden samen te voegen., De naam cat voor de vorige operatie is net zo onintuitief als, Laten we zeggen, LISP ‘ s cdr.

nutteloos gebruik van catEdit

nutteloos gebruik van cat (UUOC) is een veelgebruikt Unix-jargon voor opdrachtregelconstructies die alleen een gebruiksfunctie voor de gebruiker bieden. Dit wordt ook wel “kattenmisbruik” genoemd. De activiteit van het fixeren van gevallen van UUOC wordt soms demoggificatie genoemd., Voorbeeld van een gemeenschappelijk cat misbruik wordt gegeven in de prijs:

cat filename | command arg1 arg2 argn

Dit kan worden herschreven met behulp van de omleiding van de invoer in de plaats, in een van de volgende vormen (het eerste is een meer traditionele):

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

Dan de andere voordelen de input redirection formulieren kunt de opdracht voor het uitvoeren van random access op het bestand, terwijl de cat voorbeelden niet., Dit komt omdat het omleidingsformulier het bestand opent als de stdin-bestandsdescriptor die volledig toegankelijk is, terwijl het cat formulier de gegevens eenvoudig als een stroom van bytes verschaft.

een ander veelvoorkomend geval waarin cat niet nodig is, is waar een commando standaard werkt op stdin, maar uit een bestand zal lezen, als de bestandsnaam als argument wordt gegeven., Dit is het geval voor veel voorkomende commando ‘ s; de volgende voorbeelden

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

kunnen in plaats daarvan worden geschreven als

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

een veelgebruikt interactief gebruik van cat voor een enkel bestand is het uitvoeren van de inhoud van een bestand naar standaarduitvoer. Als de uitvoer echter door een pijpleiding wordt geleid of omgeleid, is cat niet nodig.

a cat geschreven met UUOC kan nog steeds de voorkeur krijgen om redenen van leesbaarheid, omdat het lezen van een door pijpleiding van links naar rechts gemakkelijker te conceptualiseren is., Ook kan een verkeerd gebruik van het omleidingssymbool “>” in plaats van “<” (vaak naast Toetsenborden) de inhoud van een bestand permanent verwijderen, met andere woorden clobbering, en een manier om dit te voorkomen is door cat met pijpen te gebruiken. Vergelijk:

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

met:

cat in | command | command2 > out

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *