PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mehrere Konsolenfenster per Schleife erzeugen



f.gruber
22-02-2009, 21:10
Hallo,
kann man folgendes mit einem Shellskript machen:

Ich möchte mit Hilfe einer Schleife mehrere Konsolenfenster öffnen, in denen dann jeweils ein Programm automatisch gestartet werden soll.

Von einem Computer aus soll über ssh auf mehreren Rechnern das gleiche Programm gestartet werden, z.B YAST. Für jeden Rechner soll also am Mastercomputer ein Fenster mit YAST erscheinen.

Einzelne Befehle mit Hilfe einer Schleife über ssh auf jedem Rechner absetzen, z.B. eine Datei zum Client kopieren oder löschen, das habe ich bereits gemacht, das funktioniert.

Aber wenn ein Programm interaktiv ist, dann geht es eben nicht so einfach, daher diese Frage, die nicht als Faschingsscherz gemeint ist. ;)

jan61
23-02-2009, 19:56
Moin,

hast Du schon screen probiert?

Jan

f.gruber
24-02-2009, 11:43
Moin,
hast Du schon screen probiert?
Jan

Bitte mich nicht auslachen:
Wenn ich folgendes eingebe

for s in 1 2; do screen ; done
wird screen gestartet. Aber erst, wenn ich diese screen Session mit

exit
beendet habe, wird das zweite Mal screen gestartet.

Welchem Denkfehler unterliege ich hier?

undefined
24-02-2009, 16:21
for i in a b ; do konsole --workdir /tmp -e top & > /dev/null ; done
Am besten währe aber ein dcop script

f.gruber
24-02-2009, 19:20
for i in a b ; do konsole --workdir /tmp -e top & > /dev/null ; done
Danke, das wars. Dass man die Ausgabe nach /dev/null schicken muss, auf diese Idee bin ich nicht gekommen. Verstehen tu ich es eigentlich auch nicht.

Am besten wäre aber ein dcop script
Was ist das?

undefined
24-02-2009, 19:43
Das mit der Umleitung ist nur ein trick damit die bash nicht glaubt das es sich um einen unären Operator handelt.
Du kannst statt > /dev/null auch ||true schreiben.

dcop ist eine Scripting Schnittstelle für KDE3 siehe kdcop.
Mit dcop kannst laufende Prozesse in der KDE3 Desktop Umgebung ansprechen und steuern.