Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes

Pred enim tednom je Douglas McIlroy, razvijalec UNIX pipelina in avtor koncepta "komponentno usmerjeno programiranje", je povedal spregovoril o zanimivih in nenavadnih UNIX programih, ki niso našli široke uporabe. Objava je sprožila aktivno razpravo na Hacker News. Zbrali smo najbolj zanimivo in veselimo se, če se boste pridružili razpravi.

Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes
Foto — Virginia Johnson — Unsplash

Delo s tekstom

V UNIX-podobnih operacijskih sistemih so standardni nabor orodij za oblikovanje besedil. Orodje typo je omogočilo pregledovanje dokumenta za tipkarske napake in hapaks — besed, ki se v gradivu pojavijo samo enkrat. Zanimivo je, da program ne uporablja slovarjev. Zanaša se samo na informacije v datoteki in izvaja frekvenčno analizo po trigramih (zaporedje treh znakov). Pri tem se vsi potrebni štejejo hrani v tabeli 26x26x26. Po besedah Douglasa McIlroya je te kapacitete le za nekaj enobitnih števcev. Zato so jih za varčevanje pisali v logaritmični obliki.

Danes so typo zamenjali z modernejšimi in natančnejšimi programi za preverjanje črkovanja, temelječimi na slovarjih. Vendar pa se instrument še vedno spominjajo — pred nekaj leti je navdušenec представил implementiral typo v Go. Repozitorij se še vedno posodablja.

Še en instrument za delo z dokumenti iz 80-ih — paket Writer’s Workbench Lorinde Cherry in Nine McDonald iz Bell Labs. Vključena so bila orodja za določanje delov govora in sloga dokumenta, iskanje tautologij in preveč zapletenih stavkov. Orodja so bila razvita kot podpora študentom, in nekoč so jih uporabljali študenti Državne univerze Kolorado v ZDA. Vendar pa so na začetku devetdesetih o Writer’s Workbench pozabili, ker ga niso vključili v Version 7 Unix. Ta instrument pa je nadaljeval pot podlagateljem — na primer, Grammatik za IBM PC. V UNIX so tudi standardna sredstva, ki poenostavljajo delo s formulami. Obstaja predprocesor jezika za oblikovanje matematičnih izrazov.

V UNIX-u so na voljo tudi standardna orodja, ki poenostavijo delo z formulami. Obstaja predprocesor jezika za oblikovanje matematičnih izrazov. eqnIzpostavlja se, da lahko razvijalec za prikaz formule preprosto opiše z besedami in simboli. Ključne besede omogočajo premikanje matematičnih znakov navpično in horizontalno, spreminjanje njihovih velikosti in drugih parametrov. Če programu posredujemo vrstico:

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

Na izhodu bo ustvarjena naslednja formula:

Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes

V 1980–1990 je eqn pomagal IT strokovnjakom pisati priročnike za programsko opremo. Toda kasneje ga je zamenjal sistem LaTeX, ki uporablja tudi Habr. Vendar je eqn prvi orodje te vrste, ki ostaja del UNIX-podobnih operacijskih sistemov.

Delo s datotekami

V tematskem nizkodo so uporabniki Hacker News omenili več redko uporabljenih pripomočkov za delo s fajli. Eden od njih izvedena comm za njihovo primerjavo. To je poenostavljena različica diff, zasnovana za delo v skriptah. Njegova je zapisal sam Richard Stallman skupaj z Davidom MacKenzijem.

Izhod programa vsebuje tri stolpce. V prvi stolpec gredo vrednosti, edinstvene za prvi fajl, v drugem – edinstvene za drugi fajl. Tretji stolpec vključuje skupne vrednosti. Za pravilno delovanje comm morata biti primerjana dokumenta leksikalno razvrščena. Zato je eden od uporabnikov povedal, da je predlagal dela z orodjem v naslednji obliki:

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

Comm je enostaven za uporabo za preverjanje črkovanja besed. Preprosto jih primerjajte s standardnim dokumentom-slovarjem. Glede na posebnosti, povezane z nujnostjo razvrščanja fajlov, je mnenje, da sta Stallman in MacKenzie napisala svojo programsko opremo izključno za to uporabniško nalogo.

Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes
Foto — Marnix Hogendoorn — Unsplash

Tudi udeleženec razprave na HN primetio možnosti operatorja paste, ki so zanj bile očitne. Omogoča izmenjavo podatkovnih tokov ali delitev enega toka na dva stolpca pri izhodu:

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

En uporabnik je opazil, da pogosto za izvajanje teh preprostih operacij uporabljajo neoptimalne rešitve: od fmt, ex in končanje z mlr z jot in rs.

Katere standardne možnosti UNIX-podobnih operacijskih sistemov so bile zate odkritje?

O čemer pišemo v našem korporativnem blogu:

Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes Kako se je razvijal sistem domen: doba ARPANET
Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes Zgodovina sistema domen: prvi DNS strežniki
Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes Zgodovina DNS: kdaj so postala domena plačljive
Razprava: standardne UNIX-utility, ki jih je malo kdo uporabljal in jih uporablja še danes Zgodovina sistema domen: 'vojne' protokolov

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster