Vor einer Woche sprach Douglas McIlroy, der Entwickler des UNIX-Systems und Erfinder des Begriffs âkomponentenorientierte Programmierungâ, ĂŒber interessante und ungewöhnliche UNIX-Programme, die bislang keine breite Anwendung gefunden haben. Die Veröffentlichung löste eine lebhafte Diskussion auf Hacker News aus. Wir haben die spannendsten Punkte zusammengestellt und wĂŒrden uns freuen, wenn Sie sich an der Diskussion beteiligen.
Foto â â Unsplash
Arbeiten mit Text
In UNIX-Ă€hnlichen Betriebssystemen gibt es eine Standardauswahl an Werkzeugen zur Textformatierung. Das Dienstprogramm typo ermöglichte die Durchsicht von Dokumenten auf Tippfehler und â Wörter, die im Material nur einmal vorkommen. Interessanterweise nutzte das Programm zur Fehlersuche WörterbĂŒcher. Es stĂŒtzte sich ausschlieĂlich auf Informationen aus der Datei und fĂŒhrte eine HĂ€ufigkeitsanalyse ĂŒber Trigramme (eine Folge aus drei Zeichen) durch. Dabei wurden alle erforderlichen ZĂ€hler Heute wurden Tippfehler durch modernere und genauere RechtschreibprĂŒfprogramme auf Wörterbuchbasis ersetzt. Dennoch ist das Werkzeug in Erinnerung geblieben â vor einigen Jahren realisierte ein Enthusiast
die Implementierung von typo in Go. Das Repository wird bis heute aktualisiert. Ein weiteres Werkzeug zur Bearbeitung von Dokumenten aus den 80er Jahren ist das Paket
Writerâs Workbench von Lorinda Cherry und Nina McDonald von Bell Labs. Es beinhaltete Werkzeuge zur Bestimmung der Wortarten und des Stils von Dokumenten, zur Suche nach Tautologien und ĂŒbermĂ€Ăig komplizierten SĂ€tzen. Die Dienstprogramme wurden als UnterstĂŒtzung fĂŒr Studenten entwickelt und wurden eine Zeit lang von Grammatik In UNIX stehen auch standardisierte Mittel zur VerfĂŒgung, die die Arbeit mit Formeln erleichtern. Es gibt einen PrĂ€prozessor fĂŒr die Formatierung mathematischer AusdrĂŒcke. fĂŒr IBM PC.
In UNIX gibt es auch Standardsysteme, die die Arbeit mit Formeln erleichtern. Es gibt einen Preprocessor der Sprache zur Formatierung mathematischer AusdrĂŒcke. eqn. Er ist bemerkenswert, weil der Entwickler zur Darstellung der Formel lediglich einfache Worte und Symbole beschreiben muss. SchlĂŒsselwörter ermöglichen es, mathematische Zeichen vertikal und horizontal zu verschieben, ihre GröĂen und andere Parameter zu Ă€ndern. Wenn man der Utility eine Zeichenkette ĂŒbergibt:
summe von { k = 1 } bis N { k hoch 2 }Auf der Ausgabe wird die folgende Formel generiert:

In den 1980er und 1990er Jahren half eqn sogar Habr. Aber eqn ist das erste Tool seiner Art, das Teil von UNIX-Ă€hnlichen Betriebssystemen bleibt. sogar Habr. Aber eqn ist das erste Werkzeug seiner Art, das ein Teil von UNIX-Ă€hnlichen Betriebssystemen bleibt.
Arbeit mit Dateien
In einem thematischen Thread bemerkten die Mitglieder von Hacker News mehrere selten genutzte Utilities zur Arbeit mit Dateien. Eine davon comm zum Vergleichen. Das ist eine vereinfachte Version , die fĂŒr die Verwendung in Skripten optimiert ist. Sein Erfinder Richard Stallman zusammen mit David MacKenzie.
Die Ausgabe des Programms besteht aus drei Spalten. In die erste Spalte gelangen Werte, die fĂŒr die erste Datei einzigartig sind, in die zweite - die einzigartig fĂŒr die zweite Datei sind. Die dritte Spalte enthĂ€lt gemeinsame Werte. FĂŒr das korrekte Funktionieren muss comm die verglichenen Dokumente lexikalisch sortiert haben. Deshalb sollte einer der Mitglieder der Plattform mit der Utility in folgender Form arbeiten:
comm <(sort fileA.txt) <(sort fileB.txt)Comm ist praktisch zur ĂberprĂŒfung von Schreibweisen. Man muss sie nur mit einem Referenzdokument - Wörterbuch - vergleichen. In Anbetracht der Feinheiten, die mit der Notwendigkeit der Sortierung von Dateien verbunden sind, gibt es , dass Stallman und MacKenzie ihr Utility ausschlieĂlich fĂŒr diesen Anwendungsfall geschrieben haben.

Foto â â Unsplash
Auch ein Teilnehmer an der Diskussion auf HN die Möglichkeiten des Operators paste, die ihm nicht offensichtlich waren. Er erlaubt es, Datenströme zu alternieren oder einen einzigen Strom bei der Ausgabe in zwei Spalten zu teilen:
$ paste <( echo -e 'foonbar' ) <( echo -e 'baznqux' )
foo baz
bar qux
$ echo -e 'foonbarnbaznqux' | paste - -
foo bar
baz qux
Einer der Benutzer , dass fĂŒr die DurchfĂŒhrung dieser einfachen Operationen oft nicht die optimalsten Lösungen verwendet werden: angefangen bei , und endend mit c und .
Welche Standardfunktionen UNIX-Ă€hnlicher Betriebssysteme waren fĂŒr Sie eine Entdeckung?
WorĂŒber wir in unserem Unternehmensblog schreiben:
![]()
![]()
![]()
![]()
Quelle: habr.com
