/ Vykonanie riadku kódu v rámci gedit s bash - bash

Vykonanie riadku kódu v rámci gedit s bash - bash

Píšem skript, aby som dokončil toto grafické rozhranie, ktoré píšem.

Ako by ste spustili premennú, ktorá je napríklad na riadku 3?

Napríklad:

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

Z terminálu chcem spustiť riadok 3 v skripte, ktorý som napísal.

Ako by som to urobil?

odpovede:

1 pre odpoveď č. 1

Za predpokladu, že váš skript je myscript.sh

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

editovať

Požadované vysvetlenie:

  • head -n 3 myscript.sh získa prvé 3 riadky skript
  • Tieto prvé tri riadky sú piped (cez | operátor) do tail -n1, ktorý vráti iba 1 riadok od konca vstupu, takže dostanete posledný riadok prvých 3 riadkov - to je riadok 3
  • eval() bude jednoducho spustiť výsledný reťazec, akoby bol napísaný v skripte - a tak bude tretí riadok
  • vznikajú záplaty eval() spustiť výkon ostatných príkazov po ich spustení