Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig

Egy héttel ezelőtt Douglas McIlroy, a UNIX-folyamat fejlesztője és a "komponens-orientált programozás" koncepciójának ötletgazdája. elmondtam érdekes és szokatlan UNIX-programokról, amelyeket nem használnak széles körben. A kiadvány aktív vitát indított a Hacker Newsról. Összegyűjtöttük a legérdekesebb dolgokat, és örülünk, ha csatlakozol a vitához.

Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig
Фото - virginia johnson — Fröcskölés

Munka szöveggel

A UNIX-szerű operációs rendszerek szabványos eszközkészlettel rendelkeznek a szöveg formázásához. Hasznosság sajtóhiba lehetővé tette a dokumentum áttekintését az elírások és a hapaxok - olyan szavak, amelyek csak egyszer szerepelnek az anyagban. Érdekes módon a program a gépelési hibák keresésére nem használja szótárak. Csak a fájlban lévő információkra támaszkodik, és trigramok (három karakterből álló sorozat) segítségével gyakoriságelemzést végez. Ebben az esetben az összes szükséges számláló tartják 26x26x26-os tömbben. Douglas McIlroy szerint ez a memóriamennyiség alig volt elegendő több egybájtos számlálóhoz. Ezért a pénzmegtakarítás érdekében logaritmikus formában írták őket.

Ma a gépelési hibákat modernebb és pontosabb szótár alapú helyesírás-ellenőrzők váltották fel. Az emberek azonban még mindig emlékeznek a hangszerre - néhány évvel ezelőtt egy rajongó benyújtott gépelési hiba megvalósítása a Go-ban. Az adattár még mindig frissítés alatt áll.

A 80-as évek dokumentumaival való munka másik eszköze a csomag Írói munkaasztal Lorinda Cherrytől és Nina McDonaldtól, a Bell Labstól. Az összetétele beleértve eszközök a beszédrészek és a dokumentumstílus azonosítására, a tautológiák és a szükségtelenül összetett mondatok keresésére. A segédprogramokat a tanulók segédeszközeként fejlesztették ki, és egy időben ők is használt a Colorado State University hallgatói az USA-ban. De a kilencvenes évek elejére a Writer's Workbench feledésbe merült, mert nem volt benne a 7-es Unix verzióban. Ez a hangszer azonban folytatta útját az utánzók felé – pl. nyelvtan IBM PC-hez.

A UNIX szabványos eszközöket is biztosít a képletekkel való munka megkönnyítéséhez. Van egy nyelvi előfeldolgozó a matematikai kifejezések formázására eqn. Figyelemre méltó, hogy a képlet megjelenítéséhez a fejlesztőnek csak egyszerű szavakkal és szimbólumokkal kell leírnia azt. A kulcsszavak lehetővé teszik a matematikai szimbólumok függőleges és vízszintes eltolását, méretük és egyéb paramétereik megváltoztatását. Ha átadja a sort a segédprogramnak:

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

A kimenet a következő képletet generálja:

Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig

Az 1980-1990-es években eqn segített Az informatikusok kézikönyveket írnak a szoftverekhez. Később azonban felváltotta a LaTeX rendszer, amely felhasznál sőt Habr. De az eqn az első olyan eszköz, amely a UNIX-szerű operációs rendszerek része marad.

Fájlokkal való munka

Egy tematikus szálban a Hacker News lakói megjegyeztek néhány ritkán használt segédprogramot a fájlokkal való munkához. Egyikük ez volt komm összehasonlítani őket. Ez egy egyszerűsített analóg diff, szkriptekben való munkára szabva. Övé írtam Richard Stallman maga David MacKenzie-vel együtt.

A program kimenete három oszlopból áll. Az első oszlop az első fájl egyedi értékeit tartalmazza, a második oszlop a második fájl egyedi értékeit tartalmazza. A harmadik oszlop a teljes értékeket tartalmazza. A kommunikáció megfelelő működéséhez az összehasonlított dokumentumokat lexikálisan rendezni kell. Ezért a helyszín egyik lakója felajánlotta dolgozzon a segédprogrammal a következő formában:

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

A Comm kényelmesen használható a szavak helyesírásának ellenőrzésére. Elég összehasonlítani őket egy referenciaszótári dokumentummal. Figyelembe véve a fájlok rendezésének szükségességével kapcsolatos finomságokat, van kilátás, hogy Stallman és MacKenzie kizárólag erre a használati esetre írta a segédprogramját.

Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig
Фото - Marnix Hogendoorn — Fröcskölés

Szintén beszélgetés résztvevője a HN-n azt is megjegyezte, kezelői képességek tészta, amelyek nem voltak nyilvánvalóak számára. Lehetővé teszi az adatfolyamok átlapolását vagy az egyik adatfolyam két oszlopra való felosztását kimenetkor:

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

Az egyik felhasználó észrevette, hogy gyakran nem a legoptimálisabb megoldásokat alkalmazzák ezeknek az egyszerű műveleteknek a végrehajtására: kezdve azzal fmt, ex és véget ér mlr с j и rs.

A UNIX-szerű operációs rendszerek mely szabványos szolgáltatásai voltak felfedezés az Ön számára?

Amiről céges blogunkban írunk:

Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig Hogyan fejlődött a domain névrendszer: az ARPANET korszak
Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig A tartománynévrendszer története: Az első DNS-kiszolgálók
Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig A DNS története: amikor a domain nevek fizetőssé váltak
Beszélgetés: szabványos UNIX segédprogramok, amelyeket kevesen használtak és használnak még mindig A domain névrendszer története: Protokollháborúk

Forrás: will.com

Hozzászólás