So verwenden Sie den Echo-Befehl unter Linux

Fatmawati Achmad Zaenuri/Shutterstock
Die |_+_| Befehl ist perfekt zum Schreiben von formatiertem Text in das Terminalfenster. Und es muss kein statischer Text sein. Es kann Shell-Variablen, Dateinamen und Verzeichnisse enthalten. Sie können Echo auch umleiten, um Textdateien und Protokolldateien zu erstellen. Folgen Sie dieser einfachen Anleitung, um herauszufinden, wie.
Echo wiederholt, was Sie ihm sagen, es zu wiederholen
Zeus liebte es, den Olymp zu verlassen, um mit schönen Nymphen zu verkehren. Auf einer Reise sagte er einer Bergnymphe namens Echo zu seine Frau überfallen , Hera, wenn sie ihm folgte. Hera kam, um nach Zeus zu suchen, und Echo tat alles, um Hera im Gespräch zu halten. Schließlich verlor Hera die Beherrschung und verfluchte das arme Echo, sodass sie nur die letzten Worte wiederholte, die jemand anderes gesagt hatte. Was Hera Zeus angetan hat, als sie ihn eingeholt hat, kann man nur vermuten.
Und das ist so ziemlich das Los von |_+_| im Leben. Es wiederholt was es wurde gesagt, es zu wiederholen . Das ist eine einfache Funktion, aber eine wichtige. Ohne |_+_| , könnten wir beispielsweise keine sichtbare Ausgabe von Shell-Skripten erhalten.
Obwohl Sie nicht mit einer Vielzahl von Schnickschnack beladen sind, besteht eine gute Chance, dass |_+_| hat einige Funktionen, von denen Sie nichts wussten oder die Sie vergessen hatten.
rauswerfen? rauswerfen!
Die meisten Linux-Systeme bieten zwei Versionen von |_+_|. Der Bash-Shell hat seine eigene |_+_| eingebaut, und es gibt eine binäre ausführbare Version von |_+_| sowie.
AnzeigeWir können die beiden verschiedenen Versionen mit den folgenden Befehlen anzeigen:
echo
echo
Die |_+_| Befehl sagt uns ob der Befehl, den wir ihm übergeben wie es ist Streit ist eine eingebaute Shell, eine ausführbare Binärdatei, ein Alias oder eine Funktion. Es meldet uns, dass |_+_| ist eine eingebaute Shell.
Sobald es eine Antwort gefunden hat, |_+_| hört auf, nach weiteren Übereinstimmungen zu suchen. Es sagt uns also nicht, ob andere Befehle mit demselben Namen im System vorhanden sind. Aber es sagt uns, welches es zuerst findet. Und das wird standardmäßig verwendet, wenn wir diesen Befehl ausgeben.
Die |_+_| Befehl sucht nach der binären ausführbaren Datei, dem Quellcode und der Manpage für den Befehl, den wir ihm als Befehlszeile übergeben Parameter . Es sucht nicht nach Shell-Builins, da sie keine separate ausführbare Binärdatei haben. Sie sind ein wesentlicher Bestandteil der ausführbaren Bash-Datei.
Die |_+_| Befehl meldet, dass |_+_| ist eine ausführbare Binärdatei im |_+_| Verzeichnis.
Um diese Version von |_+_| . zu verwenden Sie müssten es explizit aufrufen, indem Sie den Pfad zur ausführbaren Datei in der Befehlszeile angeben:
echo
Die eingebaute Shell weiß nicht, was die |_+_| Befehlszeilenargument ist, es wird nur im Terminalfenster wiederholt:
echo
Die hier gezeigten Beispiele verwenden alle die Standardversion von |_+_| in der Bash-Shell.
Schreiben von Text in das Terminal
Um eine einfache Textzeichenfolge in das Terminalfenster zu schreiben, geben Sie |_+_| . ein und die Zeichenfolge, die angezeigt werden soll:
echo
Der Text wird für uns wiederholt. Aber beim Experimentieren werden Sie schnell feststellen, dass die Dinge etwas komplizierter werden können. Schauen Sie sich dieses Beispiel an:
echo
Das Terminalfenster zeigt ein |_+_| unterschreibt und sitzt da und wartet. Strg+C bringt Sie zur Eingabeaufforderung zurück. Was ist da passiert?
Das einfache Anführungszeichen oder der Apostroph im Wort Ich bin verwirrt |_+_|. Es interpretierte dieses einfache Anführungszeichen als Anfang eines zitierten Textabschnitts. Da kein schließendes einfaches Anführungszeichen erkannt wurde, |_+_| wartete auf mehr Input. Es erwartete, dass weitere Eingaben das fehlende einfache Anführungszeichen enthalten würden, auf das es gewartet hatte.
AnzeigeUm ein einfaches Anführungszeichen in eine Zeichenfolge einzufügen, besteht die einfachste Lösung darin, die gesamte Zeichenfolge in doppelte Anführungszeichen einzuschließen:
echo
Das Umschließen Ihres Textes in doppelte Anführungszeichen ist ein guter allgemeiner Rat. In Skripten grenzt es die Parameter, die Sie an |_+_| übergeben, sauber ab. Dies macht das Lesen – und Debuggen – von Skripten viel einfacher.
Was ist, wenn Sie ein doppeltes Anführungszeichen in Ihre Textzeichenfolge einfügen möchten? Das ist ganz einfach, fügen Sie einfach einen Backslash ein |_+_| vor dem doppelten Anführungszeichen (ohne Leerzeichen dazwischen).
type
Dies schließt das Wort Geek für uns in doppelte Anführungszeichen ein. Wir werden mehr davon sehen Backslash-escaped Zeichen kurz.
Verwenden von Variablen mit echo
Bisher haben wir vordefinierten Text in das Terminalfenster geschrieben. Wir können Variablen mit |_+_| . verwenden um eine dynamischere Ausgabe zu erzeugen, in die Werte von der Shell für uns eingefügt werden. Mit diesem Befehl können wir eine einfache Variable definieren:
echo
Anzeige Eine Variable namens |_+_| wurde erschaffen. Es wurde der Wert des Textes Dave zugewiesen. Wir können den Variablennamen in den Strings verwenden, die wir an |_+_| . übergeben , und der Wert der Variablen wird in das Terminalfenster geschrieben. Sie müssen ein Dollarzeichen setzen |_+_| vor dem Variablennamen, um |_+_| wissen, dass es eine Variable ist.
Es gibt einen Vorbehalt. Wenn Sie Ihre Zeichenfolge in einfache Anführungszeichen eingeschlossen haben |_+_| wird alles wörtlich behandeln. Um die Variable zu haben Wert angezeigt, und nicht die Name der Variablen verwenden Sie doppelte Anführungszeichen.
type
whereis
Etwas treffend, das ist es wert, wiederholt zu werden:
- Verwenden von Single Anführungszeichen führen dazu, dass der Text in a . in das Terminalfenster geschrieben wird wörtlich Mode.
- Verwenden von doppelt Anführungszeichen führen dazu, dass die Variable interpretiert wird – auch als Variablenerweiterung bezeichnet – und die Wert wird in das Terminalfenster geschrieben.
VERBUNDEN: So arbeiten Sie mit Variablen in Bash
Verwenden von Befehlen mit echo
Wir können einen Befehl mit |_+_| . verwenden und füge seine Ausgabe in die Zeichenfolge ein, die in das Terminalfenster geschrieben wird. Wir müssen das Dollarzeichen verwenden |_+_| als ob der Befehl eine Variable wäre, und schließen Sie den gesamten Befehl in Klammern ein.
Wir werden die verwenden Datumsbefehl . Ein Tipp ist, den Befehl allein zu verwenden, bevor Sie ihn mit |_+_| verwenden. Wenn mit der Syntax Ihres Befehls etwas nicht stimmt, identifizieren Sie es und korrigieren es, bevor Sie es in das |_+_| . einfügen Befehl. Wenn dann |_+_| Befehl tut nicht das, was Sie erwarten, Sie wissen, dass das Problem mit dem |_+_| Syntax, weil Sie die Syntax des Befehls bereits bewiesen haben.
Versuchen Sie es also im Terminalfenster:
whereis
Und wenn wir davon überzeugt sind, dass wir das bekommen, was wir vom Datumsbefehl erwarten, integrieren wir ihn in ein |_+_| Befehl:
echo
Beachten Sie, dass der Befehl in Klammern und dem Dollarzeichen steht |_+_| steht unmittelbar vor der ersten Klammer.
Text mit Echo formatieren
Die |_+_| (Backslash-Escapes aktivieren) ermöglicht es uns, einige Backslash-Escape-Zeichen zu verwenden, um das Layout des Textes zu ändern. Dies sind die Zeichen mit Backslash-Escape, die wir verwenden können:
- & rsaquo; So verwenden Sie den dig-Befehl unter Linux
- & rsaquo; So passen Sie die Bash-Shell mit shopt an
- & rsaquo; So verwenden Sie die Brace-Erweiterung in der Linux-Bash-Shell
- › So finden Sie Ihr Spotify Wrapped 2021
- & rsaquo; Cyber Monday 2021: Die besten Apple-Angebote
- & rsaquo; Cyber Monday 2021: Die besten Tech-Deals
- › 5 Websites, die jeder Linux-Benutzer mit einem Lesezeichen versehen sollte
- › Der Computerordner ist 40: Wie Xerox Star den Desktop erstellte
Lassen Sie uns einige von ihnen verwenden und sehen, was sie tun.
/bin
Der Text wird in eine neue Zeile aufgeteilt, in der wir das |_+_| . verwendet haben Zeichen und ein Tab wird eingefügt, wo wir das |_+_| . verwendet haben Zeichen.
echo
Wie die |_+_| neue Zeilenzeichen, ein vertikaler Tabulator |_+_| verschiebt den Text in die darunter liegende Zeile. Aber im Gegensatz zum |_+_| Zeilenumbrüche, die |_+_| vertikale Tabulatortaste beginnt die neue Zeile nicht bei Spalte Null. Es verwendet die aktuelle Spalte.
Die |_+_| Backspace-Zeichen bewegen den Cursor um ein Zeichen zurück. Wenn mehr Text an das Terminal geschrieben werden soll, überschreibt dieser Text das vorherige Zeichen.
--version
Die 3 wird von der 4 überschrieben.
Die |_+_| Wagenrücklaufzeichen verursacht |_+_| um zum Anfang der aktuellen Zeile zurückzukehren und weiteren Text ab Spalte Null zu schreiben.
echo
Die 123 Zeichen werden durch die 456 Zeichen überschrieben.
Die |_+_| Das Warnzeichen erzeugt einen hörbaren Piepton. Es verwendet den Standard-Warnton für Ihr aktuelles Design.
echo
Die |_+_| Die Option (kein Zeilenumbruch) ist keine Sequenz mit Backslash-Escape, aber sie beeinflusst die Schönheit des Textlayouts, daher werden wir sie hier besprechen. Es verhindert |_+_| vom Hinzufügen eines Zeilenumbruchs zum Ende des Textes. Die Eingabeaufforderung erscheint direkt nach dem Text, der in das Terminalfenster geschrieben wird.
>
Verwendung von echo mit Dateien und Verzeichnissen
Sie können |_+_| . verwenden als eine Art Arme-Mann-Version von |_+_|. Ihre Möglichkeiten sind gering, wenn Sie |_+_| . verwenden so was. Wenn Sie eine gewisse Wiedergabetreue oder Feinsteuerung benötigen, verwenden Sie besser |_+_| und seine Legion von Optionen .
Dieser Befehl listet alle Dateien und Verzeichnisse im aktuellen Verzeichnis auf:
echo
Dieser Befehl listet alle Dateien und Verzeichnisse im aktuellen Verzeichnis auf, deren Name mit D beginnt:
echo
Dieser Befehl listet alle .desktop-Dateien im aktuellen Verzeichnis auf:
echo
Ja. Dies spielt nicht die Stärken von |_+_| aus. Verwenden Sie |_+_|.
Schreiben in Dateien mit Echo
Wir können die Ausgabe von |_+_| . umleiten und entweder Textdateien erstellen oder in vorhandene Textdateien schreiben.
AnzeigeWenn wir die |_+_| . verwenden Umleitungsoperator wird die Datei erstellt, wenn sie nicht existiert. Wenn die Datei vorhanden ist, wird die Ausgabe von |_+_| wird am Anfang der Datei hinzugefügt und überschreibt alle vorherigen Inhalte.
Wenn wir die |_+_| . verwenden Umleitungsoperator wird die Datei erstellt, wenn sie nicht existiert. Die Ausgabe von |_+_| wird am Ende der Datei hinzugefügt und überschreibt keinen vorhandenen Inhalt der Datei.
echo
my_name
Mit dem ersten Befehl wird eine neue Datei erstellt, in die Text eingefügt wird. Der zweite Befehl fügt am Ende der Datei eine Textzeile hinzu. Die |_+_| Befehl zeigt den Inhalt der Datei im Terminalfenster an.
Und natürlich können wir Variablen hinzufügen, um unserer Datei einige nützliche Informationen hinzuzufügen. Wenn es sich bei der Datei um eine Protokolldatei handelt, möchten wir möglicherweise einen Zeitstempel hinzufügen. Das können wir mit dem nächsten Befehl tun.
Beachten Sie die einfachen Anführungszeichen um die Parameter für die |_+_| Befehl. Sie verhindern, dass das Leerzeichen zwischen den Parametern als Ende der Parameterliste interpretiert wird. Sie stellen sicher, dass die Parameter an |_+_| . übergeben werden korrekt.
echo
$
Unser Logfile wird für uns erstellt und |_+_| zeigt uns, dass sowohl der Datumsstempel als auch der Zeitstempel hinzugefügt wurden.
VERBUNDEN: Was sind stdin, stdout und stderr unter Linux?
Das ist Echos Repertoire
Ein einfacher Befehl, aber unverzichtbar. Wenn es sie nicht gäbe, müssten wir sie erfinden.
Zeus' Spielereien haben immerhin etwas Gutes getan.
VERBUNDEN: Beste Linux-Laptops für Entwickler und Enthusiasten
WEITER LESEN
Dave McKay benutzte zum ersten Mal Computer, als Lochstreifen in Mode waren, und programmiert seitdem. Nach über 30 Jahren in der IT-Branche ist er heute hauptberuflich Technologiejournalist. Im Laufe seiner Karriere war er als freiberuflicher Programmierer, Leiter eines internationalen Softwareentwicklungsteams, Projektleiter für IT-Services und zuletzt als Datenschutzbeauftragter tätig. Sein Schreiben wurde von howtogeek.com, cloudavvyit.com, itenterpriser.com und opensource.com veröffentlicht. Dave ist ein Linux-Evangelist und Open-Source-Verfechter.
Vollständige Biografie lesen