Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari

Bir hafta oldin, Duglas MakIlroy, UNIX quvur liniyasini ishlab chiquvchisi va "komponentga yo'naltirilgan dasturlash" kontseptsiyasining asoschisi, Men aytgan keng qo'llanilmaydigan qiziqarli va noodatiy UNIX dasturlari haqida. Nashr Hacker News bo‘yicha faol muhokamani boshlab yubordi. Biz eng qiziqarli narsalarni to'pladik va agar siz muhokamaga qo'shilsangiz, xursand bo'lamiz.

Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari
Foto - Virjiniya Jonson - Splash

Matn bilan ishlash

UNIX-ga o'xshash operatsion tizimlar matnni formatlash uchun standart vositalar to'plamiga ega. Qulaylik yozuv Hujjatni matn terish xatolarini ko'rib chiqishga imkon berdi va hapakslar - materialda faqat bir marta kelgan so'zlar. Qizig'i shundaki, matn terish xatolarini topish uchun dastur foydalanmaydi lug'atlar. U faqat fayldagi ma'lumotlarga tayanadi va trigramlar (uchta belgi ketma-ketligi) yordamida chastota tahlilini amalga oshiradi. Bunday holda, barcha kerakli hisoblagichlar saqlanadi 26x26x26 massivda. Duglas MakIlroyning so'zlariga ko'ra, bu hajmdagi xotira bir necha baytli hisoblagichlar uchun zo'rg'a etarli edi. Shuning uchun pulni tejash maqsadida ular logarifmik shaklda yozildi.

Bugungi kunda matn terish xatosi zamonaviyroq va aniqroq lug'atga asoslangan imlo tekshirgichlari bilan almashtirildi. Biroq, odamlar hali ham asbob haqida eslashadi - bir necha yil oldin ishtiyoqli tanishtirdi Go-da matn terish xatosini amalga oshirish. Repozitariy hali ham yangilanmoqda.

80-yillardagi hujjatlar bilan ishlashning yana bir vositasi - bu paket Yozuvchining ish stoli Bell laboratoriyasidan Lorinda Cherri va Nina Makdonalddan. Uning tarkibi kiritilgan nutq qismlarini va hujjat uslubini aniqlash, tavtologiya va keraksiz murakkab jumlalarni qidirish uchun vositalar. Kommunal xizmatlar talabalar uchun yordam sifatida ishlab chiqilgan va bir vaqtning o'zida ular ispolzovali AQShning Kolorado shtat universiteti talabalari. Ammo 7-yillarning boshlariga kelib, Writer's Workbench unix XNUMX-versiyasiga kiritilmagani uchun unutildi. Biroq, bu asbob taqlidchilarga o'z yo'lini davom ettirdi - masalan, Grammatiken IBM PC uchun.

UNIX shuningdek formulalar bilan ishlashni osonlashtirish uchun standart vositalarni taqdim etadi. Matematik ifodalarni formatlash uchun til preprotsessori mavjud ekn. Shunisi e'tiborga loyiqki, formulani ko'rsatish uchun ishlab chiquvchi uni oddiy so'zlar va belgilar bilan tavsiflashi kerak. Kalit so'zlar matematik belgilarni vertikal va gorizontal ravishda siljitish, ularning o'lchamlari va boshqa parametrlarini o'zgartirish imkonini beradi. Agar chiziqni yordamchi dasturga o'tkazsangiz:

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

Chiqish quyidagi formulani hosil qiladi:

Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari

1980-1990 yillarda ekn yordam berdi IT mutaxassislari dasturiy ta'minot uchun qo'llanmalar yozadilar. Ammo keyinchalik u LaTeX tizimi bilan almashtirildi ispolzet hatto Xabr. Ammo eqn o'z sinfidagi UNIX-ga o'xshash operatsion tizimlarning bir qismi bo'lib qolgan birinchi vositadir.

Fayllar bilan ishlash

Tematik mavzuda Hacker News rezidentlari fayllar bilan ishlash uchun kamdan-kam ishlatiladigan bir nechta yordamchi dasturlarni qayd etdilar. Ulardan biri edi comm ularni solishtirish uchun. Bu soddalashtirilgan analog farq, skriptlarda ishlash uchun moslashtirilgan. Uning yozgan Richard Stallmanning o'zi Devid Makkenzi bilan birga.

Dasturning chiqishi uchta ustundan iborat. Birinchi ustunda birinchi faylga xos bo'lgan qiymatlar, ikkinchi ustunda ikkinchi faylga xos bo'lgan qiymatlar mavjud. Uchinchi ustun umumiy qiymatlarni o'z ichiga oladi. comm to'g'ri ishlashi uchun solishtirilgan hujjatlar leksik tartiblangan bo'lishi kerak. Shuning uchun, sayt rezidentlaridan biri taklif qildi yordamchi dastur bilan quyidagi shaklda ishlang:

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

Comm so'zlarning imlosini tekshirish uchun foydalanish uchun qulay. Ularni ma'lumotnoma lug'at hujjati bilan solishtirish kifoya. Fayllarni saralash zarurati bilan bog'liq nozikliklarni hisobga olgan holda, mavjud mnenie, Stallman va MacKenzie o'z yordam dasturini faqat ushbu foydalanish holati uchun yozgan.

Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari
Foto - Marnix Hogendoorn - Splash

Shuningdek, HN bo'yicha muhokama ishtirokchisi qayd etdi operator imkoniyatlari joylashtirish, bu unga aniq bo'lmagan. Bu sizga ma'lumotlar oqimini bir-biriga qo'shish yoki chiqishda bitta oqimni ikkita ustunga bo'lish imkonini beradi:

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

Foydalanuvchilardan biri payqadi, bu oddiy operatsiyalarni bajarish uchun ko'pincha eng maqbul echimlar qo'llanilmaydi: bilan boshlanadi fmt, ex va tugatish mlrd с j и rs.

UNIX-ga o'xshash operatsion tizimlarning qaysi standart xususiyatlari siz uchun kashfiyot bo'ldi?

Korporativ blogimizda nimalar haqida yozamiz:

Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari Domen nomlari tizimi qanday rivojlangan: ARPANET davri
Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari Domen nomlari tizimining tarixi: Birinchi DNS serverlari
Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari DNS tarixi: domen nomlari pullik bo'lganda
Muhokama: kamdan-kam odam foydalangan va hali ham foydalanayotgan standart UNIX yordamchi dasturlari Domen nomlari tizimining tarixi: Protokol urushlari

Manba: www.habr.com

a Izoh qo'shish