/ / Ausführung einer Codezeile innerhalb von gedit mit bash - bash

Ausführen einer Codezeile innerhalb von gedit mit bash - bash

Ich schreibe ein Skript, um diese GUI zu schreiben, die ich schreibe.

Wie würden Sie eine Variable ausführen, die zum Beispiel in Zeile 3 ist?

Also zum Beispiel:

var1="1"
var2="2"
var3="3"

Von einem Terminal aus möchte ich Zeile 3 innerhalb eines von mir geschriebenen Skripts ausführen.

Wie würde ich das tun?

Antworten:

1 für die Antwort № 1

Angenommen, Ihr Skript ist myscript.sh

eval `head -n3 myscript.sh | tail -n1`

Bearbeiten

Erklärung wie gewünscht:

  • head -n 3 myscript.sh wird die ersten 3 Zeilen von dir abrufen Skript
  • Diese ersten drei Zeilen sind piped (über die | Betreiber) zu tail -n1, die nur eine Zeile vom Ende der Eingabe zurückgibt, so erhalten Sie die letzte Zeile der ersten 3 Zeilen - das ist Zeile 3
  • eval() führt die resultierende Zeichenfolge einfach so aus, als ob sie im Skript geschrieben wäre - also läuft die dritte Zeile
  • die Backticks werden machen eval() führe die Ausgabe der anderen Befehle, nachdem sie ausgeführt wurden