Ich versuche, einen Befehl zu erstellen, der gestartet wird screen
, vier Sitzungen mit unterschiedlichen Namen erstellt und vier verschiedene Befehle ausführt.
Ich weiß, wie man das manuell macht:
1. screen
2. ./command1 args
3. CTRL-A :sessionname Session 1
4. CTRL-A C
5. (GOTO 2)
Kann ich das mit einem Bash-Skript oder so machen? Wie würde ich das machen?
linux
bash
gnu-screen
Hughes
quelle
quelle
.screenrc
unten stehende Antwort hätte stattdessen akzeptiert werden müssen.Um mehrere Sitzungen automatisch zu starten, richten Sie eine
.screenrc
Datei ein, eine Konfigurationsdatei für den Bildschirm. Darin können Sie Sitzungen erstellen, Programme starten, das Arbeitsverzeichnis ändern usw. Ich benutze es, um meine Bildschirmsitzung zu initialisieren.Einfaches Beispiel für eine .screenrc-Datei:
Mit den
screen
Befehlen oben wird jeweils eine Bildschirmsitzung erstellt.-t
legt den Titel der Sitzung fest; Der Rest der Zeile ist der auszuführende Befehl und seine Parameter.Somit
screen
starten die erste und die zweite Zeile eine Sitzung und starten imvim
Inneren. Der dritte startet nur eine Sitzung und lässt Sie an einer Eingabeaufforderung fallen.chdir
Ändert das Arbeitsverzeichnis für alle nachfolgenden Sitzungen.Wenn Sie mehrere
.screenrc
Dateien haben möchten , benennen Sie sie einfach nach Belieben und wählen Sie eine mitscreen -c myscreenrc
.quelle
Sie können die Optionen d, m, S zusammen verwenden:
S: Um einen Bildschirm zu erstellen
d: Trennen Sie sich von einem Bildschirm
m: Um die Erstellung eines Bildschirms zu erzwingen, unabhängig davon, ob der Bildschirm von einem anderen Bildschirm aus aufgerufen wird oder nicht.
quelle
screen -dmS s1
usw. Ich wusste nicht, dass beim Gruppieren von Optionen die mit einem Argument nicht die letzte sein muss.