Wie man den Echo-Befehl Verwenden auf Linux

0
1537
Fatmawati Achmad Zaenuri/Shutterstock

Der echo Befehl ist perfekt für das schreiben von formatiertem text in das terminal-Fenster. Und es muss nicht statisch sein text. Darin können auch shell-Variablen, Dateinamen und Verzeichnisse. Sie können auch umleiten echo zum erstellen von text-Dateien und log-Dateien. Folgen Sie dieser einfachen Anleitung, um herauszufinden, wie.

Echo Wiederholt, Was Sie Sagen, Es Zu Wiederholen

Zeus liebte verlassen Mount Olympus consort mit schönen Nymphen. Auf einer Reise, er erzählt eine Berg-Nymphe namens Echo auf waylay seine Frau, Hera, wenn Sie ihm folgten. Hera Tat kommen, nach Zeus ” und “Echo” hat alles, was Sie halten konnte Hera im Gespräch. Schließlich Hera verloren Ihr Temperament und verflucht schlechte Echo, so dass Sie nur wiederholen die letzten Worte, die jemand gesagt hatte. Was Hera hat Zeus, wenn Sie ihn einholten, ist anybody ‘ s guess.

Und das, ziemlich viel, ist echo, ist viel im Leben. Es wiederholt, was es gesagt wurde, zu wiederholen. Das ist eine einfache Funktion, aber ein wesentlicher. Ohne echo , wir würden keine sichtbare Ausgabe von shell-Skripten, zum Beispiel.

Während nicht beladen nach unten mit einer Vielzahl von Glocken und Pfeifen, es gibt eine gute chance, dass echo hat einige Funktionen, die Sie nicht kennen oder die Sie vergessen hatte.

echo? echo!

Die meisten Linux-Systeme bieten zwei Versionen von echo. Die Bash-shell hat seinen eigenen echo hinein gebaut, und es gibt eine ausführbare Binärdatei version von echo als gut.

Wir können sehen, dass die zwei verschiedenen Versionen mit folgenden Befehlen:

geben Sie echo
whereis echo

Der type-Befehl sagt uns, ob der Befehl, den wir passieren, um es als argument ist ein shell-builtin, eine ausführbare Binärdatei, ein alias oder eine Funktion ist. Er berichtet uns, dass echo ist ein shell-builtin.

Sobald es eine Antwort gefunden, geben Sie beendet die Suche nach weiteren übereinstimmungen. Also es sagt uns nicht, wenn es andere Befehle mit dem gleichen Namen im system vorhanden. Aber es sagt uns, welches er zuerst findet. Und das ist die eine, die standardmäßig verwendet werden soll, wenn wir die Ausgabe dieses Befehls.

Die whereis-Befehl sieht für die binäre ausführbare Datei, Quellcode und die man-Seite für den Befehl, den wir passieren, um Sie als seine eigenen Kommandozeilen-parameter. Es sieht nicht für shell gelieferten, weil Sie nicht über eine separate ausführbare Binärdatei. Sie sind ein fester Bestandteil der Bash executable.

Die whereis-Befehl meldet, dass echo ist eine binäre ausführbare Datei befindet sich im /bin-Verzeichnis.

Verwenden Sie diese version von echo müssten Sie explizit nennen Sie es, indem Sie den Pfad zu der ausführbaren Datei in der Befehlszeile ein:

/bin/echo –version

Die shell-builtin nicht weiß, was die –version command-line-argument ist, es nur wiederholt es in das terminal-Fenster:

echo –version

Die hier gezeigten Beispiele verwenden die Standard-version von echo, in der Bash-shell.

Schreiben von Text in das Terminal

Schreiben Sie eine einfache Zeichenfolge von text in das terminal-Fenster, geben Sie echo und die Zeichenfolge, die Sie wollen, dass es angezeigt werden soll:

echo Mein name ist Dave.

Der text ist wiederholt bei uns. Aber als Sie Experimentieren, werden Sie schnell entdecken, dass die Dinge etwas komplizierter. Schauen Sie auf dieses Beispiel:

echo Mein name ist Dave und ich bin ein geek.

Das terminal-Fenster zeigt ein ” > ” signieren und sitzt da, wartet. Strg+C werden Sie wieder zu der Eingabeaufforderung. Was ist da passiert?

Die einfachen Anführungszeichen oder Apostroph im Wort “ich bin” verwirrt echo. Er interpretiert, dass einfache Anführungszeichen als Beginn eines Zitates. Weil es nicht erkennen, ein schließendes einfaches Anführungszeichen, echo wartete auf mehr input. Es erwartet, dass ein weiterer Beitrag zu den fehlenden Apostroph wartete.

Um ein einfaches Anführungszeichen in einer Zeichenfolge, die einfachste Lösung ist, wickeln Sie die ganze Zeichenfolge in doppelte Anführungszeichen:

echo “Mein name ist Dave und ich bin ein geek.”

Wickeln Sie Ihren text in Anführungszeichen ist eine gute Allgemeine Hinweise. In scripts, es sauber trennt die Parameter, die Sie übergeben haben, um echo. Dies macht das Lesen—und debugging—Skripte sehr viel einfacher.

Was, wenn Sie wollen, um ein doppeltes Anführungszeichen in Ihrem text? Das ist einfach, setzen Sie einen backslash vor den doppelten Anführungszeichen (ohne Leerzeichen dazwischen).

echo “Mein name ist Dave und ich bin ein “geek.””

Dieser umschließt das Wort “geek” in doppelte Anführungszeichen für uns. Wir werden sehen, mehr von diesen backslash-Escape-Zeichen in Kürze.

Verwendung von Variablen Mit echo

So weit, wir habe das schreiben von vordefinierten text in das terminal-Fenster. Wir verwenden Variablen mit echo, Ausgabe zu produzieren, der mehr ist dynamisch und hat Werte eingefügt, die es für uns durch die shell. Wir definieren eine einfache variable mit diesem Befehl:

my_name=”Dave”

Eine variable namens my_name erstellt wurde. Es wurde zugewiesen den Wert der text “Dave.” Wir können den Namen der Variablen in die strings, die wir übergeben, echo , und der Wert der variable geschrieben werden, um das terminal-Fenster. Sie müssen mit einem dollar-Zeichen ” $ ” vor dem Variablennamen zu lassen echo weiß, es ist eine variable.

Es gibt eine Einschränkung. Wenn Sie umwickelt habe den string in einfache Anführungszeichen echo zu behandeln, wird alles wörtlich. Um den Wert der Variablen angezeigt und nicht der name der Variablen, verwenden Sie doppelte Anführungszeichen.

echo ‘Mein name ist $my_name’
echo “Mein name ist $my_name”

Irgendwie treffend, das ist eine Wiederholung Wert:

  • Verwendung von einfachen Anführungszeichen Ergebnisse in den text geschrieben, um das terminal-Fenster auf wörtliche Weise.
  • Mit doppelten Anführungszeichen werden Ergebnisse in den Variablen interpretiert—auch als variable expansion—und der Wert wird geschrieben, um das terminal-Fenster.

RELATED: Wie Arbeiten Sie mit Variablen in der Bash

Mit Hilfe der Befehle Mit echo

Wir können einen Befehl mit echo, und integrieren seine Ausgabe in die Zeichenkette, die geschrieben werden, um das terminal-Fenster. Wir müssen mit dem dollar-Zeichen$, als ob der Befehl eine variable, und wickeln Sie den gesamten Befehl in Klammern.

Wir verwenden den Befehl “date”. Ein Tipp ist es, mit dem Befehl, auf Ihre eigenen, bevor Sie es mit echo. So, wenn es etwas falsch mit der syntax des Befehls, Sie zu identifizieren und korrigieren, bevor Sie es in den echo-Befehl. Dann, wenn der echo-Befehl nicht tut, was Sie erwarten, werden Sie wissen, das Problem muss mit dem echo-syntax, denn Sie haben bereits bewiesen das Kommando syntax.

Also, versuchen Sie diese in das terminal-Fenster:

date +%D

Und, zufrieden damit, dass wir bekommen, was wir erwarten, dass aus dem date-Befehl, werden wir die Integration in einen echo-Befehl:

echo “das heutige Datum ist: $(date +%D)”

Hinweis: der Befehl innerhalb der Klammern und die dollar-Zeichen $ wird unmittelbar vor der ersten Klammer.

Formatieren von Text Mit echo

Die -e (enable backslash-escapes) option ermöglicht uns die Nutzung einige backslash-escaped Zeichen zu ändern, das layout des Textes. Dies sind die backslash-Escape-Zeichen, die wir benutzen können:

  • a: Alert (historisch bekannt als BEL). Dies erzeugt eine Standard-Warnung sound.
  • b: Schreibt einen backspace-Charakter.
  • c: Verzichtet auf jede weitere Ausgabe.
  • e: Schreibt ein escape-Zeichen.
  • f: Schreibt ein form-feed-Zeichen.
  • n: Schreibt eine neue Zeile.
  • r: Schreibt einen Zeilenumbruch.
  • t: Schreibt einen horizontalen tab.
  • v: Schreibt eine vertikale Registerkarte.
  • \: Schreibt einen umgekehrten Schrägstrich.

Lassen Sie uns einige von Ihnen und sehen, was Sie tun.

echo -e “Das ist eine lange Zeile von textnsplit über drei ZeilennMitttabsTonnetDietthirdtline”

Der text ist aufgeteilt in eine neue Zeile, wobei wir verwendet haben, das n-Zeichen und ein Tabulatorzeichen eingefügt, wo haben wir das t-Zeichen.

echo -e “Hiervarevverticalvtabs”

Wie die n neue-Zeile-Zeichen, vertikaler Tabulator v bewegt den text in die Zeile unterhalb. Aber im Gegensatz zu dem n ein neue-Zeile-Zeichen, die v vertikaler tab nicht starten, wird die neue Zeile in der Spalte null ist. Es verwendet die aktuelle Spalte.

Das b backspace Zeichen bewegen den cursor ein Zeichen zurück. Wenn es mehr text geschrieben werden, das terminal -, dass der text überschreibt die Vorherige Charakter.

echo -e “123b4”

Die “3” ist vorbei-geschrieben von der “4”.

Der r-carriage-return-Zeichen bewirkt, dass echo zurück an den Anfang der aktuellen Zeile und schreiben Sie einen beliebigen weiteren text aus Spalte null.

echo -e “123r456”

Die “123” – Zeichen überschrieben werden, indem Sie die “456” – Zeichen.

Die a alert-Zeichen erzeugt ein hörbares “piep.” Es nutzt die Standard-Alarm-sound für Ihr Aktuelles Thema.

echo -e “Make a bleepa”

Die -n (no newline) option nicht eine backslash-Escape-Sequenz, sondern wirkt sich auf die Kosmetik von der text-layout, also werden wir diskutieren es hier. Es verhindert, dass echo hinzufügen eines Zeilenumbruchs am Ende des Textes. Die Eingabeaufforderung wird angezeigt, direkt nachdem Sie den text geschrieben, um das terminal-Fenster.

echo -n “no final newline”

Mit echo Mit Dateien und Verzeichnissen

Sie können echo als eine Art poor man ‘ s version von ls. Ihre Möglichkeiten sind wenige und weit zwischen, wenn Sie echo wie dieses. Wenn Sie müssen irgendeine Art von treue-oder Feinsteuerung, Sie sind besser mit ls und seine legion von Optionen.

Dieser Befehl listet alle Dateien und Verzeichnisse im aktuellen Verzeichnis:

echo *

Dieser Befehl listet alle Dateien und Verzeichnisse im aktuellen Verzeichnis, deren name beginnt mit “D” :

echo D*

Dieser Befehl listet alle “.desktop” – Dateien im aktuellen Verzeichnis:

echo *.desktop

Ja. Dies ist nicht das spielen von echo zu stärken. Verwenden Sie ls.

Schreiben in Dateien mit echo

Wir können die Umleitung der Ausgabe von echo und erstellen text-Dateien schreiben oder in bestehenden text-Dateien.

Wenn wir die > Umleitung Betreiber, die Datei wird erstellt falls Sie nicht vorhanden ist. Wenn die Datei nicht existiert, wird die Ausgabe von echo Hinzugefügt am Anfang der Datei, überschreiben alle vorherigen Inhalte.

Wenn wir die >> Umleitung Betreiber, die Datei wird erstellt falls Sie nicht vorhanden ist. Die Ausgabe von echo an das Ende der Datei und überschreibt keine vorhandenen Inhalt der Datei.

echo “eine neue Datei Erstellen.” > sample.txt
echo “Hinzufügen zu der Datei.” >> sample.txt
Katze sample.txt

Eine neue Datei wird erstellt, indem der erste Befehl, und der text wird eingefügt. Der zweite Befehl fügt eine Textzeile an das Ende der Datei. Der cat-Befehl zeigt den Inhalt der Datei in das terminal-Fenster.

Und natürlich, wir können Variablen enthalten, fügen Sie einige nützliche Informationen zu unseren Datei. Wenn die Datei ein logfile, vielleicht möchten wir ein timestamp Hinzugefügt. Wir können tun, dass mit dem nächsten Befehl.

Beachten Sie das einzelne Anführungszeichen um die Parameter für den Befehl “date”. Sie verhindern, dass der Raum zwischen den Parametern interpretiert als das Ende der parameter-Liste. Sie sorgen für die Parameter übergeben werden, um das Datum richtig.

echo “Logfile läuft: $(date +’%D %T’)” > logfile.txt
Katze logfile.txt

Unsere logfile erstellt wird, für uns und die Katze zeigt uns, dass der Zeitstempel und Zeitstempel waren beide Hinzugefügt.

RELATED: Was Sind stdin, stdout und stderr auf Linux?

Das echo Repertoire

Ein einfacher Befehl, aber unverzichtbar. Wenn es Sie nicht gäbe, müssten wir Sie erfinden.

Zeus-Spielereien hat einige gute, nachdem alle.

LESEN SIE WEITER

  • › Kostenloser Download: Microsoft ‘ s Batch-Umbenennen PowerToy
  • › Wie Reaktivieren Sie Windows 10 Nach einem Hardware-Wechsel
  • › Wie Force-Dark-Modus auf Jeder Website in Google Chrome
  • › Wie zu Beheben Druckprobleme in Microsoft Word
  • › Wie Sicher Sind Öffentliche Ladestationen?