Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag

För en vecka sedan diskuterade Douglas McIlroy, utvecklaren av UNIX-röret och skaparen av begreppet "komponentbaserad programmering", berÀttade intressanta och ovanliga UNIX-program som inte fÄtt stort genomslag. Publikationen satte igÄng en aktiv diskussion pÄ Hacker News. Vi har samlat det mest intressanta och vi ser fram emot att du ansluter dig till diskussionen.

Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag
Foto — Virginia Johnson — Unsplash

Arbeta med text

I UNIX-liknande operativsystem finns det en standarduppsĂ€ttning verktyg för textformatering. Verktyget typo gjorde det möjligt att granska dokument för stavfel och hapax — ord som förekommer endast en gĂ„ng i materialet. Intressant nog anvĂ€nder programmet inte ordlistor. Det Ă€r helt och hĂ„llet baserat pĂ„ informationen i filen och utför frekvensanalys av trigram (en sekvens av tre tecken). Alla nödvĂ€ndiga rĂ€knare lagras i en 26x26x26-matris. Enligt Douglas McIlroy rĂ€ckte det hĂ€r minnet knappt till för nĂ„gra enbyte rĂ€knare. För att spara minne skrev de dem i logaritmisk form.

Idag har typo ersatts av mer moderna och exakta stavningskontrollprogram baserade pĂ„ ordlistor. Men verktyget Ă€r fortfarande ihĂ„gkommet — för nĂ„gra Ă„r sedan skapade en entusiast Ă„r en implementation av typo i Go. Repositoriet uppdateras fortfarande.

Ett annat verktyg för dokumentarbete frĂ„n 80-talet Ă€r paketet Writer’s Workbench frĂ„n Lorinda Cherry och Nina McDonald vid Bell Labs. Det innehöll verktyg för att identifiera delar av tal och stil i dokument, samt för att hitta tautologier och överdrivet komplexa meningar. Verktygen utvecklades som stöd för studenter, och en tid anvĂ€ndes de av studenter vid Colorado State University i USA. Men vid tidpunkten för början av 90-talet hade Writer’s Workbench glömts bort, eftersom det inte ingick i Version 7 Unix. Men det hĂ€r verktyget fortsatte sin vĂ€g med efterliknare — till exempel, anvĂ€ndes Grammatik för IBM PC. Det finns Ă€ven standardverktyg i UNIX som förenklar arbetet med formler. Det finns en preprocessorer för att formatera matematiska uttryck

eqn eqn. Den Àr anmÀrkningsvÀrd eftersom det för att visa formeln rÀcker med att utvecklaren beskriver den med enkla ord och symboler. Nyckelorden gör det möjligt att justera matematiska tecken vertikalt och horisontellt, Àndra deras storlek och andra parametrar. Om man skickar en strÀng till verktyget:

sum from { k = 1 } to N { k sup 2 }

Utdata kommer att generera följande formel:

Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag

Under 1980-1990-talet eqn hjÀlpte IT-specialister att skriva manualer för mjukvaran. Men senare ersattes den av systemet LaTeX, vilket anvÀnder Àven Habr. Men eqn Àr det första verktyget av detta slag som fortfarande Àr en del av UNIX-liknande OS.

Arbete med filer

I det tematiska trÄden noterade medlemmarna pÄ Hacker News flera sÀllan anvÀnda verktyg för att arbeta med filer. Ett av dem en comm för deras jÀmförelse. Det Àr en förenklad motsvarighet diff, anpassad för att fungera i skript. Den skrev sjÀlv Richard Stallman tillsammans med David MacKenzie.

Programmets utdata bestĂ„r av tre kolumner. I den första kolumnen hamnar vĂ€rden som Ă€r unika för den första filen, i den andra — unika för den andra filen. Tredje kolumnen innehĂ„ller gemensamma vĂ€rden. För att comm ska fungera korrekt mĂ„ste de jĂ€mförda dokumenten vara lexikaliskt sorterade. DĂ€rför föreslog en av medlemmarna pĂ„ plattformen föreslog att arbeta med verktyget i följande form:

comm <(sort fileA.txt) <(sort fileB.txt)

Comm Ă€r praktiskt att anvĂ€nda för att kontrollera stavningen av ord. Det rĂ€cker att jĂ€mföra dem med ett referensdokument – en ordlista. Med tanke pĂ„ detaljerna kring behovet av att sortera filer finns det en Ă„sikt, att Stallman och MacKenzie skrev sitt verktyg uteslutande för detta anvĂ€ndningsfall.

Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag
Foto — Marnix Hogendoorn — Unsplash

Även deltagare i diskussionen pĂ„ HN en av volontĂ€rerna som stödjer den ryska lokalisationen noterade möjligheterna med operatorn paste, som var oklara för honom. Den gör det möjligt att vĂ€xla mellan datastreams eller dela en stream i tvĂ„ kolumner vid utdata:

$ paste <( echo -e 'foonbar' ) <( echo -e 'baznqux' )
foo     baz
bar     qux
$ echo -e 'foonbarnbaznqux' | paste - -
foo     bar
baz     qux

En av anvÀndarna AEP, att man ofta anvÀnder inte helt optimala lösningar för att utföra dessa enkla operationer: allt frÄn fmt, ex och slutar med mlr med jot och rs.

Vilka standardmöjligheter i UNIX-liknande operativsystem har varit en ögonöppnare för dig?

Vad skriver vi om i vÄr företagsblogg:

Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag Hur domÀnnamnssystemet utvecklades: ARPANET-eran
Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag Historien om domÀnnamnssystemet: de första DNS-servrarna
Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag Historien om DNS: nÀr domÀnnamn blev betalbara
Diskussion: standard UNIX-verktyg som fÄ har anvÀnt och som knappt anvÀnds idag Historien om domÀnnamnssystemet: "protokollens krig"

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster