Bash Linux -Umleitung Operatoren

Bash Linux -Umleitung Operatoren
Unter Linux ist das Terminal alles, dort übergeben wir Befehle, und dort passieren wir Skripte. Daher ist eine der wichtigsten Skriptsprachen die Bash. Bash Scripting wird verwendet, um die langweiligen Aufgaben unter Linux zu automatisieren. Um Aufgaben zu automatisieren, werden Befehle in das Skript geschrieben und eine Erweiterung von gegeben .Sch. Im Rahmen der Befehle werden auch bestimmte Operatoren verwendet. Diese Betreiber sind einzig. In diesem Tutorial werden wir die Umleitungsbetreiber während des Bash -Skripts und deren spezifische Bedeutung überprüfen.

Umleitungsoperator: <

Das Symbol < is used for input redirection. Files, for example, can be used as input. However, in this case, the input redirection is a read-only redirection.

Zum Beispiel:

#! /Bin/Bash
Katze < file.txt

In diesem Fall die Datei.TXT wird als Eingabe genommen, und der CAT -Befehl kann es dann auskatzen.

Umleitungsoperator: <<

Der Umleitungsoperator << is also known as the here-document. The here-document allows one to put a line of input into a command in many.

Zum Beispiel:

#! /Bin/Bash
Katze << EOF
erste Linie
zweite Reihe
Eof
Toilette << EOF
erste Linie
zweite Reihe
Eof

Ok, hier haben wir zwei Eingabezeilen. Im ersten Abschnitt senden wir die Eingabe an die Katze, die alles ausgeht. Und im zweiten Abschnitt zählen wir die Anzahl der Zeilen, Wörter und Zeichen mit dem WC -Befehl. In jedem Fall können wir mehrere Zeilen als Eingabe anstelle einer einzelnen Zeile senden.

Umleitungsoperator:>

Dieses Symbol, das als Dateiumleitungsoperator bezeichnet wird, wird normalerweise verwendet überschreiben Es. Wohlgemerkt; Es überschreibt es - fett und kursiv!

Zum Beispiel:

#! /Bin/Bash
Echo "Hello World"> Datei.txt

Hier ist das> Symbol ähnlich 1>. Dies liegt daran, dass der 1 ein Dateideskriptor für die Standardausgabe ist. Bitte beachten Sie, dass die Dateideskriptoren wie folgt sind:

0 - Standardeingabe, Stdin
1 - Standardausgabe, Stdout
2 - Standardfehler, Stderr

Im vorherigen Szenario war der einzelne Stürmerpfeil zu 1> äquivalent. Wir können jedoch auch 2> schreiben, um den Standardfehler weiterzuleiten.

Zum Beispiel:

#! /Bin/Bash
MCAT -Datei.txt 2> Datei2.txt

Hier bedeutet der 2>, dass der generierte Fehler in Datei2 abgeladen wird.txt.

Umleitungsoperator: >>

Das Symbol >> wird verwendet, um anzuhängen und nicht zu ersetzen! Der Dateiumleitungsoperator> ersetzt oder überschreibt alles, während das >> zum Anhängen verwendet wird. Letzteres fügt den Inhalt zum Ende der Datei hinzu.

Zum Beispiel:

#! /Bin/Bash
Echo "Dies ist die zweite Zeile" >> Datei.txt
echo "Dies ist die dritte Zeile" >> Datei.txt

Letzteres wird die beiden Zeilen an die Datei mit dem Namen Datei anhängen.txt. Das Ergebnis der Datei.TXT ist dann wie folgt:

Umleitungsoperator: |

Der Umleitungsoperator | wird verwendet, um die Ausgabe des ersten Befehls als Eingabe des zweiten Befehls zu senden. Wenn ich beispielsweise einen Anfangsbefehl übergasse und dann den von diesem Befehl erzeugten Ausgang mit der | Der Bediener in einem zweiten Befehl wird als Eingabe empfangen und dann verarbeitet.

Zum Beispiel:

#! /Bin/Bash
ls-la | SED 's/bash/recirction_operator/'

Hier wird SED mit dem S -Befehl verwendet, um einen Namen für einen anderen zu ersetzen. Also wird SED 's/bash/recirction_operator/' verwendet, um das Wort Bash durch das Wort recirction_operator zu ersetzen.

Also, was machen wir hier?? Nun, 'ls -la' wird alles im Detail auflisten, und der Rohrbetreiber wird dies an den zweiten Befehl sendet. Der zweite Befehl (SED 's/bash/recirction_operator/') ersetzt das Wort Bash durch das Wort recirction_operator und druckt es auf den Bildschirm aus.

Umleitungsoperator:> &

Dieses Symbol leitet sowohl die Standardausgabe als auch den Standardfehler um.

Zum Beispiel;

Bash -c 'ls -la> & Datei.txt'

In diesem Fall leitet das> & Symbol sowohl die Standardausgabe als auch den Standardfehler in die Datei mit dem Namen Datei um.txt. Somit wird sowohl die generierte als auch der generierte Fehler in derselben Datei platziert.

Nehmen wir jetzt an, wir schreiben dies stattdessen:

BASH -C 'MLS -LA> & Datei.txt'

In diesem Fall sollte ein Fehler generiert werden, da es keinen MLS -Befehl gibt. Hier wird auch der Fehler an die Datei gesendet.TXT -Dokument.

Umleitungsoperator:> |

Es gibt Zeiten, in denen Sie eine Datei aufgrund von Dateibeschränkungen nicht überschreiben können. Nehmen wir nun an, dass Sie eine Datei namens Datei haben.txt, der nicht überschrieben werden kann.

Der folgende Befehl überschreibt also eine Datei nicht tatsächlich:

#! /Bin/Bash
echo "ehlo"> /tmp /Datei.txt

Wir verwenden den Bediener> | Die Datei in solchen Fällen gewaltsam zu überschreiben.

Hier schreiben wir Folgendes, um die Datei gewaltsam zu überschreiben:

#! /Bin/Bash
Echo "Ehlo"> | /TMP/Datei.txt

Umleitungsbetreiber: & >>

Der Bediener & >> fügt die Standardausgabe und den Standardfehler an die angegebene Datei an.

Ex:

#! /Bin/Bash
LSL & >> Datei.txt

In diesem Beispiel haben wir eine Datei namens Datei.txt, mit zwei Zeilen enthält. Wenn wir das Skript namens Bash ausführen.SH, der einen Befehl enthält, der nicht existiert, sollte ein Fehler werfen. Dieser Fehler wird auf Datei gefangen und angehängt.txt. Wenn der Befehl keine Fehler enthalten hätte, hätte er ihn ebenfalls gefangen und es geschickt, um ihn an die Datei mit dem Namen Datei anzuhängen.txt.

Umleitungsoperator: <<-

Der Umleitungsoperator <<- will strip all tabs from a multi-line input.

Zum Beispiel:

#! /Bin/Bash
mehr <<- EOF
erste Linie
zweite Reihe
Eof

Hier gibt es Registerkarten vor den beiden Eingangszeilen (erste Zeile, zweite Zeile). Aber wenn die Ausgabe erzeugt wird, werden die Registerkarten ignoriert.

Umleitungsoperator:

Der Umleitungsbetreiber öffnet eine Datei sowohl zum Lesen als auch zum Schreiben.

Bash Scripting ist eine wichtige Skriptsprache, mit der Aufgaben automatisiert werden können. Während des Bash -Skripts begegnen wir viel Code, aber wir begegnen auch Umleitungsoperatoren, die einzigartig für Bash sind. Diese Operatoren haben jeweils eine besondere Rolle beim Bash -Skripting und sind nicht immer offensichtlich. In diesem Tutorial haben wir einige Umleitungsoperatoren überprüft, die beim Schreiben von Bash -Skripten verwendet wurden. Offensichtlich gibt es da draußen viele Umleitungsbetreiber; Einige werden jedoch so häufig angetroffen, dass es möglicherweise notwendig sein könnte, sie beim Bash -Scripting zu kennen. Gehen Sie also von hier aus furchtlos vor Umleitungoperatoren!

Glückliche Codierung!