Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo

Saminggu ka tukang, Douglas McIlroy, pamekar pipa UNIX sareng pamula konsep "program berorientasi komponén", bébéja ngeunaan program UNIX metot jeung mahiwal nu teu loba dipaké. Publikasi dibuka hiji sawala aktif dina Hacker News. Kami parantos ngumpulkeun hal anu paling pikaresepeun sareng bakal bungah upami anjeun ngiringan diskusi.

Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo
--Ото - Virginia Adang - Unsplash

Gawe sareng téks

Sistem operasi kawas UNIX gaduh set alat standar pikeun pormat téks. Utiliti typo ngidinan Anjeun pikeun marios dokumen pikeun typos na hapaxes - kecap anu muncul dina bahan ngan sakali. Narikna, program pikeun manggihan typos teu make kamus. Éta ngan ukur ngandelkeun inpormasi dina file sareng ngalaksanakeun analisa frekuensi nganggo trigram (runtuyan tilu karakter). Dina hal ieu, sadaya counters perlu anu dijaga dina susunan 26x26x26. Numutkeun Douglas McIlroy, jumlah memori ieu bieu cukup pikeun sababaraha counters bait tunggal. Ku alatan éta, dina raraga nyimpen duit, aranjeunna ditulis dina formulir logaritmik.

Kiwari typo geus diganti ku leuwih modern jeung akurat dumasar kamus-checkers mantra. Sanajan kitu, jalma masih inget ngeunaan instrumen - sababaraha taun ka pengker enthusiast ngenalkeun palaksanaan typo di Go. Repository masih diropéa.

Alat anu sanés pikeun damel sareng dokumén ti taun 80an nyaéta pakét Workbench panulis urang ti Lorinda Cherry jeung Nina McDonald of Bell Labs. Komposisina kaasup alat pikeun ngaidentipikasi bagian tina ucapan sareng gaya dokumén, milarian tautologi sareng kalimat anu teu kedah rumit. Utiliti dikembangkeun salaku alat bantu pikeun siswa, sareng dina hiji waktos aranjeunna dipaké murid di Colorado State University di AS. Tapi ku awal nineties, Writer urang Workbench ieu poho sabab teu kaasup dina Vérsi 7 Unix. Sanajan kitu, alat ieu nuluykeun jalur na ka imitators - contona, Grammatiken pikeun IBM PC.

UNIX ogé nyayogikeun alat standar pikeun ngagampangkeun damel sareng rumus. Aya preprocessor basa pikeun pormat ekspresi matematik eqn. Éta kasohor kanyataan yén pikeun nampilkeun rumus, pamekar ngan ukur kedah ngajelaskeun dina kecap sareng simbol anu sederhana. Kecap konci ngidinan Anjeun pikeun mindahkeun simbol matematik vertikal sarta horizontal, ngarobah ukuran maranéhanana sarta parameter séjén. Upami anjeun ngalangkungan jalur ka utilitas:

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

Kaluaran bakal ngahasilkeun rumus ieu:

Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo

Dina 1980s-1990s eqn ditulungan Spesialis IT nyerat manual pikeun parangkat lunak. Tapi engké diganti ku sistem LaTeX, anu ngagunakeun malah Habr. Tapi eqn mangrupikeun alat munggaran di kelasna pikeun tetep janten bagian tina sistem operasi sapertos UNIX.

Gawe sareng file

Dina benang tematik, warga Hacker News nyatet sababaraha utilitas anu jarang dianggo pikeun damel sareng file. Salah sahijina ieu kom pikeun ngabandingkeun aranjeunna. Ieu mangrupikeun analog anu saderhana béda, disaluyukeun pikeun digawé dina naskah. Milikna kuring nulis Richard Stallman dirina babarengan jeung David MacKenzie.

Kaluaran program diwangun ku tilu kolom. Kolom kahiji ngandung nilai-nilai unik pikeun file kahiji, kolom kadua ngandung nilai unik pikeun file kadua. Kolom katilu ngawengku total nilai. Supados kom tiasa dianggo leres, dokumén anu dibandingkeun kedah diurutkeun sacara leksikal. Ku alatan éta, salah sahiji warga situs anjeunna ditawarkeun dianggo sareng utilitas dina bentuk ieu:

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

Comm merenah digunakeun pikeun mariksa éjahan kecap. Cukup pikeun ngabandingkeunana sareng dokumén kamus rujukan. Tempo subtleties pakait sareng kedah nyortir file, aya opini, yén Stallman sareng MacKenzie nyerat utilitasna sacara éksklusif pikeun kasus panggunaan ieu.

Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo
--Ото - Marnix Hogendoorn - Unsplash

Ogé pamilon diskusi dina HN nyatet kamampuhan operator témpél, nu teu atra ka manéhna. Éta ngamungkinkeun anjeun pikeun ngasingkeun aliran data atanapi ngabagi hiji aliran kana dua kolom nalika kaluaran:

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

Salah sahiji pangguna perhatoskeun, nu mindeng teu solusi paling optimal dipaké pikeun ngalakukeun ieu operasi basajan: dimimitian ku fmt, ex jeung tungtung mlr с tulisan и rs.

Naon fitur standar sistem operasi kawas UNIX anu kapanggih pikeun anjeun?

Naon anu urang tulis dina blog perusahaan urang:

Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo Kumaha Sistem Ngaran Domain Évolusi: Era ARPANET
Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo Sajarah Sistim Ngaran Domain: Server DNS Kahiji
Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo Sajarah DNS: nalika ngaran domain jadi dibayar
Diskusi: Utiliti UNIX standar anu dianggo ku sababaraha urang sareng masih dianggo Sajarah Sistim Ngaran Domain: Protocol Wars

sumber: www.habr.com

Tambahkeun komentar