Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja

Pred tednom dni je Douglas McIlroy, razvijalec cevovoda UNIX in začetnik koncepta "komponentno usmerjenega programiranja", povedal o zanimivih in nenavadnih programih UNIX, ki niso široko uporabljeni. Publikacija je sprožila aktivno razpravo o Hacker News. Zbrali smo najbolj zanimive stvari in veseli bomo, če se boste pridružili razpravi.

Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja
Foto - Virginia Johnson — unsplash

Delo z besedilom

UNIX-u podobni operacijski sistemi imajo standardni nabor orodij za oblikovanje besedila. Pripomoček tipkarska napaka vam omogočil pregled dokumenta glede tipkarskih napak in hapaksi - besede, ki se v gradivu pojavijo le enkrat. Zanimiv program za iskanje tipkarskih napak ne uporablja slovarji. Zanaša se samo na informacije v datoteki in izvaja frekvenčno analizo s pomočjo trigramov (zaporedje treh znakov). V tem primeru vse potrebne števce se hranijo v nizu 26x26x26. Po mnenju Douglasa McIlroya je ta količina pomnilnika komaj zadostovala za več enobajtnih števcev. Zato so jih zaradi varčevanja zapisali v logaritemski obliki.

Danes so tipkarsko napako nadomestili sodobnejši in natančnejši črkovalniki, ki temeljijo na slovarju. Vendar se ljudje še vedno spominjajo instrumenta - pred nekaj leti navdušenec uveden implementacija tipkarske napake v Go. Repozitorij se še posodablja.

Drugo orodje za delo z dokumenti iz 80-ih je paket Pisateljeva delovna miza od Lorinde Cherry in Nine McDonald iz Bell Labs. Njegova sestava vključeno orodja za prepoznavanje delov govora in sloga dokumenta, iskanje tavtologij in nepotrebno zapletenih stavkov. Pripomočki so bili razviti kot pomoč študentom in nekoč so uporablja študentov na univerzi Colorado State University v ZDA. Toda v zgodnjih devetdesetih je bil Writer's Workbench pozabljen, ker ni bil vključen v različico 7 Unixa. Vendar je ta inštrument nadaljeval pot do posnemovalcev – npr. slovnica za IBM PC.

UNIX ponuja tudi standardna orodja za lažje delo s formulami. Obstaja jezikovni predprocesor za oblikovanje matematičnih izrazov enač. Značilno je, da mora razvijalec za prikaz formule le opisati s preprostimi besedami in simboli. Ključne besede vam omogočajo, da premikate matematične simbole navpično in vodoravno, spreminjate njihove velikosti in druge parametre. Če posredujete vrstico pripomočku:

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

Rezultat bo ustvaril naslednjo formulo:

Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja

V letih 1980–1990 je enač pomagal IT strokovnjaki pišejo priročnike za programsko opremo. Kasneje pa ga je nadomestil sistem LaTeX, ki uporablja celo Habr. Toda eqn je prvo orodje v svojem razredu, ki ostaja del operacijskih sistemov, podobnih UNIX-u.

Delo z datotekami

V tematski niti so prebivalci Hacker News opazili več redko uporabljenih pripomočkov za delo z datotekami. En od njih je bil comm jih primerjati. To je poenostavljen analog diff, prilagojen za delo v skriptih. Njegovo napisal Sam Richard Stallman skupaj z Davidom MacKenziejem.

Izhod programa je sestavljen iz treh stolpcev. Prvi stolpec vsebuje vrednosti, edinstvene za prvo datoteko, drugi stolpec vsebuje vrednosti, edinstvene za drugo datoteko. Tretji stolpec vključuje skupne vrednosti. Da bo komunikacija delovala pravilno, morajo biti primerjani dokumenti leksikalno razvrščeni. Zato je eden od prebivalcev mesta predlagal delajte s pripomočkom v naslednji obliki:

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

Comm je priročno uporabljati za preverjanje črkovanja besed. Dovolj je, da jih primerjamo z referenčnim slovarskim dokumentom. Glede na podrobnosti, povezane s potrebo po razvrščanju datotek, obstaja mnenje, da sta Stallman in MacKenzie svoj pripomoček napisala izključno za ta primer uporabe.

Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja
Foto - Marnix Hogendoorn — unsplash

Tudi udeleženec razprave na HN opozoriti zmogljivosti operaterja testenine, ki mu niso bile očitne. Omogoča vam prepletanje podatkovnih tokov ali razdelitev enega toka v dva stolpca pri izpisu:

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

Eden od uporabnikov opazil, da se za izvajanje teh preprostih operacij pogosto uporabljajo ne najbolj optimalne rešitve: začenši z fmt, ex in konec mlr с Jota и rs.

Katere standardne funkcije UNIX podobnih operacijskih sistemov so bile za vas odkritje?

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

Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja Kako se je razvijal sistem domenskih imen: doba ARPANET
Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja Zgodovina sistema domenskih imen: prvi strežniki DNS
Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja Zgodovina DNS: kdaj so domenska imena postala plačljiva
Razprava: standardni pripomočki UNIX, ki jih je le malo ljudi uporabljalo in jih še vedno uporablja Zgodovina sistema domenskih imen: Protokolarne vojne

Vir: www.habr.com

Dodaj komentar