Verbessern Sie Ihre Befehlszeilenfähigkeiten: Eine vollständige Anleitung zu Bash- und Linux-Symbolen und -Befehlen

王林
Freigeben: 2023-06-25 15:02:16
nach vorne
1673 Leute haben es durchsucht

Dieser Leitfaden führt Sie in die weite Welt der Linux- und Bash-Symbole und -Befehle ein. Wir behandeln eine Vielzahl von Themen wie Dateisystemnavigation, Textverarbeitung, Netzwerk, Systemadministration und mehr und stellen praktische Beispiele für jeden Befehl bereit. Unabhängig davon, ob Sie ein erfahrener Linux-Benutzer sind oder gerade erst anfangen, kann Ihnen dieses Handbuch dabei helfen, Ihre Befehlszeilenfähigkeiten zu verbessern und Ihre tägliche Arbeit effizienter zu gestalten. Öffnen Sie also Ihr Terminal und legen Sie los!

提升你的命令行技能:Bash 和 Linux 符号与命令的完整指南

Umleiten

Eine der grundlegendsten und dennoch leistungsstärksten Funktionen von Bash ist die Möglichkeit, die Eingabe und Ausgabe von Befehlen umzuleiten. Hier sind einige Symbole, die für die Umleitung verwendet werden können:

  • >: Leitet die Ausgabe eines Befehls in eine Datei um und überschreibt deren Inhalt, wenn die Datei bereits vorhanden ist. Beispielsweise schreibt ls > die Ausgabe des Befehls in ls mit dem Namen linuxmi.txt.
  • >>: Leitet die Ausgabe des Befehls in eine Datei um und hängt sie an das Ende der Datei an, wenn dies der Fall ist Datei existiert bereits. Beispielsweise wird echo „Hello, world!www.linuxmi.com“ >> die Zeichenfolge „Hello, world!www.linuxmi.com“ an das Ende der Datei anhängen.
  • <: Befehlseingabe von Tastatur in Datei ändern. Beispielsweise wird sort < linuxmi.txt den Inhalt von linuxmi.txt sortieren.
  • 2>: Wird verwendet, um die Fehlerausgabe des Befehls in eine Datei umzuleiten.
  • 2>>: Wird verwendet, um die Fehlerausgabe des Befehls an eine Datei anzuhängen.
  • &>: Wird verwendet, um sowohl die Ausgabe als auch die Fehlerausgabe des Befehls in eine Datei umzuleiten.
  • &>>: Wird verwendet, um die Ausgabe und Fehlerausgabe eines Befehls an eine Datei anzuhängen.

提升你的命令行技能:Bash 和 Linux 符号与命令的完整指南

Pipeline

Sie können Pipes verwenden, um mehrere Befehle miteinander zu verbinden, sodass die Ausgabe eines Befehls zur Eingabe eines anderen Befehls wird. Das Symbol für eine Pipe ist |. Hier ist ein Beispiel:

ls -l | grep "linuxmi"
Nach dem Login kopieren

Dieser Befehl listet den Inhalt des aktuellen Verzeichnisses im Langformat ( ls -l ) auf und übergibt die Ausgabe dann an den grep-Befehl, der die Ausgabe nach der Zeichenfolge „linuxmi“ durchsucht.

  • tee: Wird verwendet, um die Ausgabe eines Befehls aufzuteilen und an Dateien und die Standardausgabe zu senden.

提升你的命令行技能:Bash 和 Linux 符号与命令的完整指南

Wildcards und Wildcards

Bash unterstützt eine leistungsstarke Funktion namens Wildcards, mit der Sie Wildcards verwenden können, um Dateinamenmuster abzugleichen. Hier sind einige der am häufigsten verwendeten Symbole beim Globbing:

  • *: Entspricht einer beliebigen Anzahl von Zeichen in einem Dateinamen. Beispielsweise listet ls *.txt alle Dateien im aktuellen Verzeichnis auf, die mit .txt.
  • ?: beginnen und mit jedem einzelnen Zeichen in ihren Namen übereinstimmen. Beispielsweise listet ls file?.txt alle Dateien im aktuellen Verzeichnis auf, die mit file beginnen und nur von einem Zeichen gefolgt werden, gefolgt von .txt.
  • [ ]: Entspricht einem beliebigen Zeichensatz. Beispielsweise listet ls file[123].txt alle Dateien im aktuellen Verzeichnis auf, die mit „or file“ beginnen und mit „.123.txt“ enden .
sed: Wird zur Textkonvertierung von Dateien oder Streams verwendet.

awk: zum Scannen und Verarbeiten von Grafiken.
  • egrep: Reguläre Ausdrücke zur Erweiterung.
  • fgrep: für reguläre Ausdrücke mit fester Zeichenfolge.
  • regex: Geben Sie Symbole für Textmuster mithilfe von Sonderzeichen und Operatoren an.
  • Variablenerweiterung und Umgebungsvariablen

$: Wird verwendet, um auf den Wert einer Variablen zu verweisen.

Export: Wird zum Erstellen oder Ändern von Umgebungsvariablen in Bash verwendet.

${}: wird für die Variablenerweiterung verwendet.
  • $(()): wird für die arithmetische Erweiterung verwendet.
  • env: Wird zum Anzeigen der aktuellen Umgebungsvariablen verwendet.
  • Echo: Wird verwendet, um den Text oder Wert von Umgebungsvariablen anzuzeigen.
  • 通配符和通配符

    • *: 匹配文件名中任意数量的字符。
    • ?: 匹配文件名中的任何单个字符。

    否定

    • !:与其他命令结合使用,执行取反。

    算术运算

    • +:算术表达式中的加法运算符。例如,echo $((2+3))将输出5.
    • -:算术表达式中的减法运算符。例如,echo $((16-5))将输出11.
    • *:算术表达式中的乘法运算符。例如,echo $((4*5))将输出20.
    • /: 算术表达式中的除法运算符。例如,echo $((20/2))将输出10.
    • $((expression)):用于在 Bash 中执行算术运算。例如,echo $((2 + 6))将打印值 8。
    • expr:用于执行算术运算。

    提升你的命令行技能:Bash 和 Linux 符号与命令的完整指南

    比较

    • ==:用于比较条件表达式中两个值是否相等。例如,if [ "$name" == "linuxmi" ]; then echo "Hello, linuxmi!"; fi将输出“Hello, linuxmi!” 如果变量的name值为“linuxmi”。
    • !=:用于比较条件表达式中的两个值是否不相等。例如,if [ "$name" != "linuxmi" ]; then echo "You're not linuxmi!"; fi将在变量name的值不为“John”输出“You’re not linuxmi!”。

    条件执行

    • &&:用于仅在前一个命令成功执行时执行后续命令。例如,command1 && command2 会仅在 command1 成功执行后才执行command2。
    • ||:用于仅在前一个命令失败时执行后续命令。例如,command1 || command2会仅在 command1 失败后才执行 command2。

    条件语句

    • if:用于检查条件是否为真并相应地执行命令。例如,if [[ $foo == "bar" ]]; then echo "foo is bar"; fi将检查变量是否foo等于“bar”,如果为真则打印“foo is bar”。
    • elifif:如果语句中的先前条件为假,则用于检查其他条件。例如,if [[ $foo == "bar" ]]; then echo "foo is bar"; elif [[ $foo == "baz" ]]; then echo "foo is baz"; else echo "foo is something else"; fi将检查是否foo等于“bar”并在为真时打印“foo is bar”,否则检查是否foo等于“baz”并在为真时打印“foo is baz”,最后打印“foo is something else”如果前面两个条件都为假。
    • [[ ]]:用于在 Bash 中执行条件测试。
    • case:用于将变量与模式列表进行匹配并相应地执行命令。例如:
case $fruit inapple)echo "It's an apple";;banana)echo "It's a banana";;*)echo "It's something else";;esac
Nach dem Login kopieren

将检查变量的值fruit,如果等于“apple”则打印“It’s an apple”,如果等于“banana”则打印“It’s a banana”,对于任何其他值则打印“It’s something else”。

Loop

  • for: Wird zum Erstellen einer Schleife verwendet, die eine Liste von Elementen durchläuft. Zum Beispiel gibt echo $fruit done für Obst in Apfel, Banane und Orange „Apfel“, „Banane“ und „Orange“ in separaten Zeilen aus.
  • while: Wird verwendet, um eine Schleife zu erstellen, die weiterhin Befehle ausführt, solange die Bedingung wahr ist. Während true; do echo „Hello“; sleep done wird beispielsweise wiederholt „Hello“ ausgegeben, bis das Skript unterbrochen wird.
  • bis: Wird zum Ausführen von Befehlen verwendet, bis die Bedingung wahr ist.

Funktion

  • Funktion: Wird zum Definieren einer Funktion in Bash verwendet. Beispielsweise definiert die Funktion hello { echo "Hallo, $1!"; } eine Funktion namens hello, die einen Parameter akzeptiert und „Hallo“ gefolgt vom Parameter ausgibt.
  • $1, $2 usw.: Wird verwendet, um auf den ersten, zweiten, dritten usw. Parameter zu verweisen, der an die Funktion übergeben wird. Beispielsweise bezieht sich $1 in der oben definierten Hallo-Funktion auf den ersten Parameter, der an die Funktion übergeben wird.

Array

  • []: wird zum Definieren eines Arrays in Bash verwendet. Beispielsweise definiert my_array=(Apple Banana Orange) ein Array mit den Namen my_array „apple“, „banana“ und „orange“.
  • ${array[@]}: wird verwendet, um alle Elemente in einem Array in Bash zu referenzieren. Echo ${my_array[@]} gibt beispielsweise „Apfel, Banane, Orange“ in einer Zeile aus.

Prozesskontrolle und -verwaltung

  • &: Wird verwendet, um Befehle im Hintergrund auszuführen.
  • Strg-C: Wird verwendet, um einen laufenden Befehl zu beenden.
  • Strg-Z: Wird verwendet, um einen laufenden Befehl anzuhalten.
  • ps: Wird verwendet, um Informationen über laufende Prozesse anzuzeigen.
  • kill: Wird verwendet, um laufende Prozesse zu beenden.
  • nohup: Wird verwendet, um Befehle im Hintergrund auszuführen, auch wenn das Terminal geschlossen ist.
  • nett: Wird verwendet, um die Priorität des Prozesses festzulegen.
  • renice: wird verwendet, um die Priorität eines bereits laufenden Prozesses zu ändern.

Dateisystemoperationen

  • cp: wird zum Kopieren von Dateien verwendet.
  • mv: wird zum Verschieben oder Umbenennen von Dateien verwendet.
  • rm: wird zum Löschen von Dateien verwendet.
  • mkdir: wird zum Erstellen von Verzeichnissen verwendet.
  • rmdir: wird zum Löschen von Verzeichnissen verwendet.
  • ln: Wird zum Erstellen von Verknüpfungen zwischen Dateien oder Verzeichnissen verwendet.

Datei- und Textoperationen

  • Kopf: Wird zum Anzeigen der ersten paar Zeilen der Datei verwendet.
  • tail: wird verwendet, um die letzten paar Zeilen der Datei anzuzeigen.
  • sortieren: Wird verwendet, um Textzeilen alphabetisch oder numerisch zu sortieren.
  • uniq: wird verwendet, um doppelte Textzeilen zu entfernen.
  • cut: Wird verwendet, um bestimmte Spalten oder Felder aus einer Textzeile zu extrahieren.
  • Einfügen: Wird zum Zusammenführen von Zeilen aus mehreren Dateien verwendet.

Berechtigungen

  • chmod: Wird zum Ändern der Berechtigungen von Dateien und Verzeichnissen verwendet.
  • chown: wird verwendet, um den Eigentümer einer Datei oder eines Verzeichnisses zu ändern.
  • chgrp: wird verwendet, um die Gruppe einer Datei oder eines Verzeichnisses zu ändern.
  • umask: wird verwendet, um die Standardberechtigungen für neue Dateien und Verzeichnisse festzulegen.

String-Operationen, Suchen und Vergleiche

  • cut: wird zum Extrahieren bestimmter Spalten aus einer Datei oder einem Stream verwendet.
  • tr: wird zum Übersetzen oder Löschen von Zeichen verwendet.
  • Sortieren: Wird zum Sortieren von Textzeilen verwendet.
  • uniq: Wird verwendet, um doppelte Zeilen aus einer Datei oder einem Stream zu entfernen.
  • grep: Wird zum Suchen nach Mustern in Dateien oder Streams verwendet.
  • sed: Wird zur Textkonvertierung von Dateien oder Streams verwendet.
  • awk: zum Scannen und Verarbeiten von Grafiken.
  • diff: Wird verwendet, um zwei Dateien Zeile für Zeile zu vergleichen.
  • cmp: Wird verwendet, um zwei Dateien Byte für Byte zu vergleichen.

Netzwerk

  • ping: Wird verwendet, um die Verbindung zu einem Netzwerkhost zu testen.
  • curl: wird zum Übertragen von Daten zum oder vom Server verwendet.
  • wget: wird zum Herunterladen von Dateien aus dem Internet verwendet.
  • ssh: Wird verwendet, um eine sichere Verbindung zu Remotecomputern herzustellen.
  • nslookup: Wird verwendet, um einen DNS-Server abzufragen, um Hostnamen in IP-Adressen aufzulösen.
  • ifconfig: Wird zum Anzeigen und Konfigurieren von Netzwerkschnittstellen verwendet.
  • netstat: Wird zur Anzeige von Netzwerkstatistiken und der Anzahl aktiver Verbindungen verwendet.

SSH und Verschlüsselung

  • ssh-keygen: Wird zum Generieren und Verwalten von SSH-Schlüsseln für sicheren Fernzugriff verwendet.
  • scp: Wird zum sicheren Übertragen von Dateien zwischen Systemen über SSH-Verbindungen verwendet.
  • openssl: Für kryptografische Funktionen wie das Generieren und Verwalten von SSL/TLS-Zertifikaten, Ver- und Entschlüsselung.
  • gpg: wird zur Verschlüsselung, Entschlüsselung und Überprüfung digitaler Signaturen verwendet.

Systeminformationen, Wartung und Verwaltung

  • sudo: Wird zum Ausführen von Befehlen mit erhöhten Rechten verwendet.
  • su: Wird verwendet, um zu einem anderen Benutzerkonto zu wechseln.
  • systemctl: Wird zur Verwaltung von Systemdiensten in systemd-basierten Linux-Distributionen verwendet.
  • Betriebszeit: Zeigt an, wie lange das System bereits läuft.
  • journalctl: wird zum Anzeigen von Systemprotokollen verwendet.
  • fdisk: Wird zum Erstellen und Betreiben von Festplattenpartitionen verwendet.
  • mount: Wird zum Mounten von Dateisystemen auf dem System verwendet.
  • oben: Wird zur Anzeige der Systemressourcennutzung verwendet.
  • htoptop: Eine erweiterte Version, die Echtzeit-Systemüberwachung und Informationen zur Ressourcennutzung bietet.
  • ps: Wird verwendet, um Informationen über laufende Prozesse anzuzeigen.
  • df: Wird zur Anzeige der Speicherplatznutzung verwendet.
  • du: Wird verwendet, um die Größe einer Datei oder eines Verzeichnisses anzuzeigen.
  • apt-get: Paketverwaltungstool zum Installieren, Entfernen und Aktualisieren von Softwarepaketen.
  • dpkg: Paketverwaltungstool zum Installieren und Verwalten von Softwarepaketen.
  • Shutdown: Wird zum Herunterfahren oder Neustarten des Systems verwendet.
  • kostenlos: Wird zur Anzeige der Systemspeichernutzung verwendet.
  • uname: Wird zum Anzeigen von Systeminformationen wie Kernelversion, Hostname usw. verwendet.
  • lscpu: Wird zum Anzeigen von CPU-Informationen verwendet.
  • lsusb: Wird zur Anzeige von an das System angeschlossenen USB-Geräten verwendet.
  • nmon: Wird zur Anzeige detaillierter Informationen zur Systemleistung verwendet, einschließlich CPU, Speicher, Festplatten-E/A und Netzwerknutzung.
  • sar: Wird zum Sammeln und Melden von Systemleistungsdaten über einen bestimmten Zeitraum verwendet.
  • lshw: Wird zum Anzeigen von Systemhardwareinformationen verwendet.
  • dmidecode: Wird zum Anzeigen der BIOS- und Hardwareinformationen des Systems verwendet.
  • lsblk: Wird verwendet, um Informationen zu Blockgeräten (z. B. Festplatten) im System anzuzeigen.
  • lspci: Wird zum Anzeigen von PCI-Geräteinformationen verwendet, die mit dem System verbunden sind.
  • lsusb: Wird verwendet, um Informationen zu USB-Geräten anzuzeigen, die mit dem System verbunden sind.

Benutzereingabe

  • lesen: Wird zum Lesen von Benutzereingaben über die Befehlszeile verwendet.
  • select: Wird verwendet, um dem Benutzer ein Menü mit Optionen anzuzeigen.

Befehlszeilenbearbeitung

  • Strg-A: Wird verwendet, um den Cursor an den Anfang der Zeile zu bewegen.
  • Strg-e: Wird verwendet, um den Cursor an das Ende der Zeile zu bewegen.
  • Strg-K: Wird verwendet, um Text von der Cursorposition bis zum Ende der Zeile zu löschen.
  • Strg-U: Wird verwendet, um Text von der Cursorposition bis zum Zeilenanfang zu löschen.

Textbearbeitung

  • nano: Ein einfacher Befehlszeilen-Texteditor.
  • vi oder vim: ein erweiterter Texteditor mit vielen Funktionen.
  • cat: wird verwendet, um den Inhalt einer Datei auf dem Terminal anzuzeigen.
  • head: wird verwendet, um die ersten paar Zeilen der Datei anzuzeigen.
  • tail: wird verwendet, um die letzten paar Zeilen der Datei anzuzeigen.

Jobsteuerung

  • Jobs: Wird zur Anzeige der Hintergrundjobliste verwendet.
  • fg: wird verwendet, um Hintergrundjobs in den Vordergrund zu rücken.
  • bg: Wird verwendet, um pausierte oder gestoppte Jobs in den Hintergrund zu verschieben.
  • kill: Wird verwendet, um laufende Prozesse zu beenden.

Benutzer- und Gruppenverwaltung

  • useradd: wird zum Erstellen neuer Benutzerkonten verwendet.
  • usermod: wird zum Ändern bestehender Benutzerkonten verwendet.
  • userdel: wird zum Löschen von Benutzerkonten verwendet.
  • groupadd: wird zum Erstellen neuer Benutzergruppen verwendet.
  • groupmod: wird zum Ändern vorhandener Benutzergruppen verwendet.
  • groupdel: wird zum Löschen von Benutzergruppen verwendet.
  • passwd: Wird zum Ändern des Benutzerpassworts verwendet.

Debugging und Fehlerbehebung

  • strace: wird verwendet, um von einem Prozess ausgegebene Systemaufrufe und Signale zu verfolgen.
  • ltrace: Wird verwendet, um von einem Prozess getätigte Bibliotheksaufrufe zu verfolgen.
  • gdb: Ein leistungsstarker Debugger zum Debuggen von C- und C++-Programmen.
  • tcpdump: Wird zum Erfassen und Analysieren des Netzwerkverkehrs verwendet.
  • wireshark: GUI-basiertes Tool zur Analyse des Netzwerkverkehrs. ellaneous
  • echo: Wird zur Anzeige von Nachrichten auf dem Terminal verwendet.
  • printf: wird zum Formatieren und Anzeigen von Daten verwendet.
  • Datum: Wird zum Anzeigen oder Einstellen des Systemdatums und der Systemzeit verwendet.
  • tar: Wird zum Erstellen oder Extrahieren komprimierter Archive verwendet.

Verschiedene

  • cal: Wird zur Anzeige des Kalenders verwendet.
  • Datum: Wird zum Anzeigen oder Ändern des Systemdatums und der Systemzeit verwendet.
  • Schlaf: Wird verwendet, um die Ausführung eines Skripts oder Befehls für eine bestimmte Zeitspanne zu verzögern.
  • tee: Wird verwendet, um die Ausgabe auf den Bildschirm und in Dateien umzuleiten.
  • history: Wird verwendet, um den Befehlsverlauf der aktuellen Shell-Sitzung anzuzeigen.
  • echo: Wird verwendet, um Text auf dem Terminal zu drucken oder in eine Datei auszugeben.

Bitte beachten Sie, dass die in diesem Leitfaden beschriebene Klassifizierung der Symbole nicht absolut ist, sondern auf einer möglichen Klassifizierung basiert. Einige Symbole gelten möglicherweise für mehr als eine Kategorie und es kann zu Überschneidungen oder Duplikaten kommen. Die Liste der Symbole erhebt keinen Anspruch auf Vollständigkeit und kann je nach Linux-Distribution und -Version variieren. Den Lesern wird empfohlen, für weitere Informationen die Dokumentation ihres Systems zu konsultieren. Dieses Handbuch soll einen umfassenden Überblick über Linux- und Bash-Flags und -Befehle bieten, ist jedoch nicht als endgültige Ressource gedacht.

Vielen Dank, dass Sie unseren umfassenden Leitfaden zu Linux- und Bash-Symbolen und -Befehlen gelesen haben. Ich hoffe, dass Ihnen dieser Leitfaden bei der Beherrschung der Befehlszeile hilfreich war. Um über die neuesten Tipps, Tricks und Best Practices für die Verwendung dieser Befehle in Ihrer täglichen Arbeit auf dem Laufenden zu bleiben, sollten Sie für zukünftige Artikel auf Linux Mito www.linuxmi.com auf dem Laufenden bleiben. Wir stellen detaillierte Beispiele und praktische Beispiele zur Verfügung, die Ihnen dabei helfen, ein besserer Linux-Benutzer und Befehlszeilenexperte zu werden.

Das obige ist der detaillierte Inhalt vonVerbessern Sie Ihre Befehlszeilenfähigkeiten: Eine vollständige Anleitung zu Bash- und Linux-Symbolen und -Befehlen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:51cto.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!