GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie füge ich mehrzeilige Bash-Codes in das Terminal ein und führe alles auf einmal aus?

Wenn Sie C-x C-e drücken Befehl, der Ihren Standardeditor öffnet, der .bashrc definiert hat , danach können Sie alle leistungsstarken Funktionen Ihres Editors nutzen. Wenn Sie speichern und beenden, warten die Zeilen auf Ihre Eingabe.

Wenn Sie Ihren Editor definieren möchten, schreiben Sie einfach für Ex. EDITOR=emacs -nw oder EDITOR=vi innerhalb von ~/.bashrc


Versuchen Sie, \ einzugeben am Ende jeder Zeile, bevor Sie sie kopieren.

Beispiel:

echo "Hello world" && \
script_b.sh

echo $?

Der Exit-Code ($? ) ist jetzt die vollständige Befehlsfolge und nicht nur der letzte Befehl.


Ich bin wirklich überrascht, dass diese Antwort hier nicht angeboten wird, ich war auf der Suche nach einer Lösung für diese Frage und ich denke, dies ist der einfachste Ansatz und flexibler/verzeihender ...

Wenn Sie mehrere Zeilen aus einer Website/einem Texteditor/etc. in die Bash einfügen möchten, egal ob es sich um Befehle pro Zeile oder eine Funktion oder ein ganzes Skript handelt, beginnen Sie einfach mit einem ( und enden mit einem ) und Enter, wie im folgenden Beispiel:

Wenn ich den folgenden Blob hätte

function hello {
    echo Hello!
}
hello

Sie können in einem Terminal mit Bash einfügen und überprüfen, indem Sie:

  1. Beginnend mit (

  2. Fügen Sie Ihren Text ein und drücken Sie die Eingabetaste (um ihn hübsch zu machen) ... oder nicht

  3. Endet mit einem ) und drücken Sie die Eingabetaste

Beispiel:

imac:~ home$ ( function hello {
>     echo Hello!
> }
> hello
> )
Hello!
imac:~ home$ 

Der eingefügte Text wird automatisch mit einem vorangestellten > fortgesetzt für jede Zeile. Ich habe mit mehreren Zeilen mit Befehlen pro Zeile, Funktionen und ganzen Skripten getestet. Ich hoffe, das hilft anderen Zeit zu sparen!


Zusätzlich zum Backslash, wenn eine Zeile mit | endet oder && oder || , wird in der nächsten Zeile fortgesetzt.


Linux
  1. So passen Sie Bash-Farben und -Inhalte in der Linux-Terminal-Eingabeaufforderung an

  2. Wie protokolliere ich jeden in Bash eingegebenen Befehl und jede Dateioperation?

  3. Kommentare in Bash-Skripten schreiben:Einzeilige, Inline- und mehrzeilige Kommentare

  4. Wie führe ich ein Shell-Skript auf einer Unix-Konsole oder einem Mac-Terminal aus?

  5. So komprimieren Sie alle Dateien in allen Unterverzeichnissen in eine komprimierte Datei in Bash

So kopieren und fügen Sie Text im Linux-Terminal ein

So führen Sie .sh-Dateibefehle auf einmal in Linux aus

Wie man SSH in einen Docker-Container einfügt und Befehle ausführt

So führen Sie ein Bash-Skript aus

So führen Sie mehrere Linux-Befehle gleichzeitig im Linux-Terminal aus

Bash-Skripting:So geben Sie Text in der Linux-Shell aus und formatieren ihn