Shell Skript mit mehreren Tabs und Delay

boncha

Lt. Commander
Registriert
Apr. 2008
Beiträge
1.474
Ich bräuchte Hilfe bei einem Shell Skript, bei dem ich mit den Anleiteitungen nicht weiterkomme.

Das Skript soll folgendes machen:
- zu /etc/openvpn wechseln
- obfsproxy starten und dieses Fenster offen lassen
- eventuell ein kurzes delay damit obfsproxy bereit ist
- neues terminal tab starten
- wieder zu /etc/openvpn wechseln
- Dort eine .ovpn Datei öffnen und auch dieses fenster offen lassen

Ich habe bisher etwas nach dem Prinizip
gnome-terminal -e "COMMAND" -e "COMMAND" --tab -e "COMMAND"
probiert, aber das bringt mich nicht weiter.

Ich hab keine Ahnung was hier der beste Ansatz wäre. Vielleicht wäre jemand so nett
mir das Skript kurz zu schreiben. Ich lerne am besten, wenn ich ein funktionierendes Beispiel sehe.

Mich interessiert vor allem was man für das Delay am besten benutzen würde.
Einfach pauschal 2 Sekunden warten würde zwar reichen, ist aber nicht immer zielführend.
Kann man "Command 2" erst dann ausführen lassen, wenn bei "Command 1" eine Voraussetzung
(programm ist einsatzbereit) erfüllt wurde?

PS: Eine Frage die mir gerade noch kommt.
Wenn ich ein Terminal Fenster per Hotkey in den Hintergrund schicke, wie kann ich dieses wiederherstellen,
also damit es wieder sichtbar wird?

danke
 
  • Delay geht einfach mit der Anweisung "sleep sek".
  • Wenn Du einen Prozess mit ^C und bg in den Hintergrund schickst, holst Du ihn mit fg wieder nach vorne.
Aber mal doof gefragt, warum brauchst Du Terminals und Prozesse interaktiv? Interaktive Prozesse scriptgesteuert geht zwar, ist aber immer etwas heikel. Dann ist die Frage, wo werden dann die neuen Konsolen gestartet? Lokal auf dem Linux Desktop? Remote (dann brauchst Du eventuell X11 und Co. Umleitungen)...
 
Aktuell muss ich halt beim start des PCs manuell erst ein Terminal Fenster öffnen,
gehe zu /etc/openvon und starte dort obfsproxy.
Danach öffne ich ein neues Terminal und verbinde mich damit dann zum VPN Server.

Das ganze wollte ich dann bequem in einem Skript zusammenfassen und ausführen lassen

Längerfristig wollte ich sogar ein kleines Projekt daraus machen.
Weil ich aktuell sowieso etwas mit QT zu tun habe, will ich mir ein kleines GUI Tool machen,
mit dem ich mich per Klick mit verschiedenen Servern verbinden.
 
boncha schrieb:
Aktuell muss ich halt beim start des PCs manuell erst ein Terminal Fenster öffnen,
Der PC ist dann mit einem Linux-Desktop ausgestattet?
 
sonst würde ich nicht im Linux Forum fragen :D
Allgemein dürfte man wohl bezweifeln, dass man unter Windows/Mac sowas via termnial machen würde
Den Spaß mach ich auch nur, weil der VPN Anbieter noch keinen Client mit obfuscation für Linux fertig hat.

Typische Begründung: Die Linux Leute können das ja manuell via Terminal machen.
Klar GEHT das, das heißt aber nicht, dass ich das machen will ...
 
Also ein neues Terminal kannst Du einfach mit xterm aufmachen. Dazu gibt es dann noch Parameter mit Font, Größen und Position.
Aber ein Programm zu starten, welches dann in einem neuen geöffneten Terminal läuft, habe ich noch gar nicht gemacht, das ist mir trotzt 25 Jahre Unix auch neu, weil ich das so noch nicht gebraucht hatte. Wenn, dann starte ich über ein Script alle relevanten Prozessen, schicke sie in den Hintergrund, übergebe Parameter etc., warten auf Daten und Logausgaben, und habe dann ein Ergebnis.

Mir ist noch nicht ganz klar, zu was Du die offenen Terminal-Fenster brauchst. Und um automatisiert sich irgendwo eine Verbindung zu verschaffen, da gibt es zig andere Möglichkeiten, eben per ssh und generierten Keys, VPN mit Keys etc. Meistens baut man doch alle Infos direkt in irgendwelche Konfiguationen ein, so daß man gar nichts weiter machen braucht, und startet das dann als Daemon/Service.
 
Zuletzt bearbeitet:
Zurück
Oben