Nädal tagasi rääkis Douglas McIlroy, UNIXi voogude arendaja ja komponentide suunamise mõiste looja, huvitavatest ja ebatavalistest UNIX-i programmidest, mis ei ole laialdaselt levinud. Avaldus algatas aktiivse arutelu Hacker News'is. Koondasime kõige huvitavama ja oleme põnevil, kui liitute aruteluga.
Foto — — Unsplash
Töö tekstiga
UNIX-i sarnastes operatsioonisüsteemides on standardne tööriistade komplekt tekstiformaatimiseks. Utiliit typo võimaldas dokumente kontrollida trükivigade ja — sõnade, mis esinevad materjalis ainult üks kord. Mis on huvitav, programmeerimiseks sõnaraamatud. See toetub ainult faili teabele ja viib läbi sageduse analüüsi trigrammide (kolmest märgist koosnev järjend) alusel. Kõik vajalikud loendajad 26x26x26 massiivis. Douglas McIlroy sõnul ei olnud selline mälu piisav isegi mõne ühesuuruse loenduri jaoks. Seetõttu kirjutati need logaritmilise vormi kokkuhoiu eesmärgil.
Tänapäeval on typo asendatud kaasaegsemate ning täpsemate õigekirjakontrolli programmide ja sõnaraamatutega. Siiski mäletatakse suurt tööriista — paar aastat tagasi realiseeris entusiast typo Go-s. Repositooriumit uuendatakse endiselt.
Veel üks dokumentide töötlusvahend 80-ndatest — paket Writer’s Workbench Lorinda Cherry ja Nina McDonald'i Bell Labsis. Selle koostisosad osade uurimis- ja stiilitööriistadest, tautoloogiate otsimisest ning liiga keerukate lausetest. Tööriistu arendati üliõpilaste abivahendiks ning üks hetk isegi Colorado Ülikoolis Ameerikas. Kuid 90-ndate alguseks unustati Writer’s Workbench, kuna seda ei kaasatud Version 7 Unixisse. Kuid see tööriist jätkas teed jäljendajateni — näiteks IBM PC-le.
UNIX-is on ka standardseid vahendeid, mis lihtsustavad valemitega töötamist. On eelprotsessor keele jaoks, et vormindada matemaatilisi väljendeid. eqnSelle eripära on see, et valemi kuvamiseks peab arendaja selle lihtsalt sõnade ja sümbolitega kirjeldama. Olulised sõnad võimaldavad nihutada matemaatilisi märke vertikaalselt ja horisontaalselt, muuta nende suurusi ja teisi parameetreid. Kui edastada utiliidile rida:
sum from { k = 1 } to N { k sup 2 }Väljundiks genereeritakse järgmine valem:

1980-1990-ndatel aitas eqn isegi Habr. Kuid eqn — see on esmane vahend sarnase klassi, mis on jäänud UNIX-i sarnaste opsüsteemide osaks. Teemas arutelu, Hacker News'i kasutajad märkisid mõnede haruldasti kasutatavate failitöötlusvahendite olemasolu. Üks neist
Failidega töötamine
oli nende võrdlemiseks. See on lihtsustatud vastane , mis on suunatud skriptide tööle. Selle koostas Richard Stallman koos David MacKenzie'ga. Programmi väljund koosneb kolmest veerust. Esimene veerg sisaldab väärtusi, mis on unikaalsed esimese faili jaoks, teine — teise faili jaoks unikaalsed. Kolmas veerg sisaldab ühiseid väärtusi. Et comm töötaks korralikult, peavad võrreldavad dokumendid olema leksikaalselt sorteeritud. Seetõttu märkis üks kohalik
töötada utiliidiga järgmisel kujul: comm <(sort fileA.txt) <(sort fileB.txt)
Comm'i on mugav kasutada sõnade õigekirja kontrollimiseks. Piisab, kui võrrelda neid standarddokumentidega, milleks on sõnaraamat. Arvestades failide sorteerimisega seotud keerukusi, on, et Stallman ja MacKenzie kirjutasid oma utiliidi eranditult selle kasutuse jaoks. Marnix Hogendoorn

Foto — — Unsplash
võimalused operaatori paste , mis olid tema jaoks mitteilmneid. See võimaldab vaheldada andmevooge või jagada ühe voogu kaheks veeruks väljundiks:$ paste <( echo -e 'foonbar' ) <( echo -e 'baznqux' ) foo baz bar qux $ echo -e 'foonbarnbaznqux' | paste - - foo bar baz qux
, et neid lihtsaid operatsioone teostatakse sageli mitte kõige optimaalsemate lahendustega: alates
Üks kasutajatest fmt , mlr koos ja .
Millised UNIX-i sarnaste opsüsteemide tavalised võimalused on teile avastuseks olnud?
Millest me meie ettevõtte blogis kirjutame:
![]()
![]()
![]()
![]()
Allikas: habr.com
