To je to, čeho chci dosáhnout:
- Chci otevřít gnome terminál s pěti kartami
- Chci automaticky spouštět sadu příkazů (5 – 10 příkazů) na každé záložce
První záložka:nastaví zobrazení s čistými písmeny a poté vykoná jeden nebo více příkazů
Druhá záložka:má přihlaste se na server a spusťte některé příkazyTřetí karta:provede pouze některé příkazy
gnome-terminal --geometry=260x25-0+0 --tab -e "csh -c "ct setview myViewName; cal"" –tab --tab --tab
(funguje dobře, pohled je nastaven, ale poté se nespustí žádný příkaz)
Zkusil jsem to udělat tímto způsobem a spustit to ve skriptu níže:
gnome-terminal --geometry 125x18-0-26 --tab -t "some title" -e /home/ekido/Desktop/MyScripts/myScript
#!/usr/bin/expect
exec gnome-terminal --geometry 125x49-0+81 –tab
spawn ssh [email protected]
expect "password"
send "*******r"
expect "[email protected]:~>"
send “some commandr"
expect "[email protected]:~>"
send “some command"
interact
Pokud odeberu exec gnome-terminal --geometry 125x49-0+81 –tab
řádky z příkladu a volání skriptu z nějakého jiného souboru, funguje to dobře — přihlásím se na server a všechny příkazy se provedou. Může mi to někdo pomoci vyřešit?
Napsat skript, který volám pro každou záložku, není možné, protože budu mít 5 terminálů s 5-7 záložkami v každém na konci, což znamená, že by bylo potřeba napsat 25 až 30 skriptů (stojí víc, než to pomůže v mém problému).
Přijatá odpověď:
Zdá se, že to na mém počítači funguje:
gnome-terminal --geometry=260x25-0+0 --tab -e "bash -c 'date; read -n1'" --tab -e "bash -c 'echo meow; read -n1' " --tab --tab
Vezměte prosím na vědomí, že jakmile jsou procesy spuštěné pomocí -e spuštěny, budou ukončeny. V tomto případě se bash načte, spustí jakékoli příkazy, které mu předáte, a okamžitě existuje. Vložil jsem příkazy čtení, abych čekal na vstup uživatele. Tímto způsobem se tyto karty nezavřou, dokud nestisknete klávesu, abyste to viděli v tomto příkladu. Bez nich by to vypadalo, jako by se otevřely pouze dvě karty, protože další dvě by se spustily a zavřely příliš rychle.