Wo beherrsche ich die nützlichsten Linux-Befehle für Programmierer? [geschlossen]


14

Die Kraft des Kombinierens xargs, cut, tail, grep, seqüberrascht mich. In welcher Ressource sollte ich nach einem Tutorial zu den nützlichsten Linux-Befehlen für Programmierer suchen?

Ich interessiere mich nur für diejenigen, die Programmierer am häufigsten verwenden, was mir das Leben leichter machen wird.


Willkommen bei Stack Exchange. Wir haben festgestellt, dass das Anfordern einer Ressourcenliste in unserem Fragen- und Antwortformat nur selten funktioniert . Bitte lesen Sie Real Questions Have Answers . Ich schlage vor , die Website durchsucht (vor allem die Fragen in den Tag - Informationen für Shell , Textverarbeitung , sed und so weiter.
Gilles ‚SO- Anschlag, die bösen‘

Antworten:


12

Das Beste, was Sie tun können, um dies zu lernen, ist, Probleme zu finden und zu lösen. Gehen Sie diese Seite durch und sehen Sie sich alle "Wie mache ich X in awk / sed / grep / etc." und probieren Sie sie aus, bevor Sie sich die Antworten ansehen. Schauen Sie, wenn Sie stecken bleiben oder sehen Sie, wie andere es getan haben, wenn Sie einen Weg gefunden haben. Wenn Sie feststellen, dass sich im Terminal etwas wiederholt, halten Sie inne und überlegen Sie, wie Sie möglicherweise ein oder mehrere Dienstprogramme verwenden, um dies zu vereinfachen. Wenn Sie keinen Weg finden, dies zu tun, posten Sie hier und wir werden Sie führen.


Nebenbei bemerkt: seq, headund tail(zumindest die am häufigsten verwendeten Teile) sind ziemlich trivial. Ich schlage vor, Sie fangen an grep, sich mit der Suche nach der Hälfte der regulären Ausdrücke vertraut zu machen und sed(parallel, aber etwas zurückgeblieben grep) die Ersatzhälfte zu erhalten (die erweiterten sedBefehle für später zu speichern ), awkweil es dann ein ziemlich mächtiges Werkzeug ist. Dann finddann xargs.
Kevin

9

Die Unix-Programmierumgebung von Kernighan und Pike ist der Klassiker zu diesem Thema. Es ist uralt, aber noch in gedruckter Form, was Ihnen etwas sagen sollte.

Die Kunst der UNIX-Programmierung von esr ist viel neuer. Ich fand es interessant und hilfreich, aber mit ein bisschen mehr Befürwortung, als ich für notwendig hielt. (Euphemismus für "schäumende Parteilichkeit".) Seien Sie bereit, seine Vergleiche mit anderen Betriebssystemen mit einem Körnchen Salz zu vergleichen, da ich mich erinnere, dass veraltetes [1] Material gefunden wurde, selbst als das Buch neu war und die * ix-Konkurrenten fast ein Jahrzehnt Zeit hatten Fortschritt seit dieser Zeit.

[1] Meistens erinnere ich mich an Schwachstellen in Nicht * ix-Betriebssystemen, die vor der Veröffentlichung des Buches beseitigt worden waren. Das Gleiche wie bei Amateur-Windows- oder Mac- oder Linux-Argumenten im Internet.


5

Befolgen Sie den Tagesplan. Beginnen Sie, indem Sie alles in auflisten /sbin. Nehmen Sie dann einen Befehl pro Tag und tippen Sie man commandund finden Sie heraus, was es tut. Die wesentlichen Kernbefehle sind alle in /sbin. Danach machen Sie sich an die Arbeit /binund wenn das erledigt ist, machen Sie sich an die Arbeit /usr/sbinund /usr/bin. Sie können Ihre Befehlsliste verkürzen, indem Sie einen Befehl mit mehr als 5 Buchstaben im Befehlsnamen überspringen, und Sie werden nicht viele wichtige Dinge verpassen.

Aber das Wichtigste ist, dass Sie jeden Tag etwas Neues lernen und wahrscheinlich, bevor Sie die Hälfte der Zeit hinter sich haben, so viel von den Grundlagen verstehen, dass Sie problemlos ein halbes Dutzend neuer Befehle pro Tag erlernen können.

Aber man muss sie benutzen, jeden einzelnen, auch wenn es nur darum geht, mit ihnen zu basteln und Übungen zu machen.


2
Das ist eine gute Idee. Lerne Befehle nacheinander. Überprüfen Sie, was sie tun und beherrschen Sie sie.
Kamil

Ich kann mich nicht darauf einigen, dass ich anfangen soll /sbin, da der Fragentitel "Für Programmierer" enthält. Auf vielen Systemen /sbinund /usr/sbinstandardmäßig PATHnur für root. Ich glaube, Sie haben Recht, sie als "Kern" -Befehle in dem Sinne anzusehen, dass sie Schlüsselbestandteile des Betriebssystems sind, aber sie sind keine Werkzeuge, die Sie beim Programmieren verwenden, so sehr wie die Systemadministration.
Warren Young

3

Eine Möglichkeit ist, einige Blogs zu lesen, die sich auf Unix / Linux spezialisiert haben.

Dieses Blog thegeekstuff, in dem ich gelegentlich schreibe, ist ein guter Anfang ... Einige wichtige Artikel, die Sie interessieren könnten, sind:

Wo gibt es eine Reihe von Tutorials über sedund awk hoffe, es ist nützlich für Sie ...


3
Die 50 Befehle sind die perfekte Antwort auf diese Frage! Sehen Sie sich die Beispiele der einzelnen Befehle an und folgen Sie bei Interesse dem Link (normalerweise bereitgestellt) zu weiteren Beispielen. Dieser Link ist ein Hüter!
Bill K


1

Programmierer haben die einmalige Gelegenheit, Linux zu beherrschen. Bei jeder Gelegenheit, die Sie haben, schreiben Sie ein Shell-Skript, anstatt ein Programm zu schreiben, um eine Aufgabe auszuführen.

Ich habe tatsächlich eine ständige persönliche Herausforderung, alles in Bash zu schreiben, bevor ich ein Programm schreibe - Sie wären erstaunt und verstört.

Was die Empfehlung für ein Buch betrifft, mag es albern erscheinen, aber der Linux Pocket Guide hat einen Ehrenplatz in meinem Bücherregal. Es ist kompakt und hat viele nützliche Linux-Programme. Es zu lesen ist einfach und eine großartige Referenz.




0
info coreutils

gibt Ihnen eine große Liste nützlicher Befehle, gruppiert nach Kontext.

Sie können dies als Leitfaden verwenden und einen Befehl pro Tag lernen, und natürlich als Repository zum Durchsuchen.


0

Ich würde Linux® Command Line und Shell Scripting Bible von Richard Blum hinzufügen . Es ist leicht zu verstehen, praktisch und voller nützlicher Beispiele.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.