Mailinglist Archive: opensuse-de (2782 mails)

< Previous Next >
Re: einzelnes commando an screen session senden
  • From: Axel Heinrici <axel.foley-beverly-hills@xxxxxx>
  • Date: Mon, 18 Apr 2005 17:14:03 +0200
  • Message-id: <200504181714.04055.axel.foley-beverly-hills@xxxxxx>
Hi

On Monday 18 April 2005 13:45, Ruediger Meier wrote:
> Hallo,
>
> Ich starte z.B eine bash mittels screen, um spaeter wieder auf diese
> zugreifen zu koennen mit
>
> $ screen -dmS testsession bash
>
> Das reaktivieren der console klappt auch gut mit:
>
> $ screen -S testsession -x
>
> Hier kann man nun wie gewohnt commandos eingeben und die session dann
> mit ctr-a-D wieder verlassen
>
> nun will ich aber nur ein commando zur testsession senden ohne es
> interaktiv einzugeben und dachte folgendes funktioniert:
>
> $ screen -S testsession -X echo "beep"
>
Das wäre das screen-commando echo!

> tuts aber nicht.
> Wenn man wahrendessen die session mit "screen -S testsession -x"
> beobachtet, wird "beep" einige sekunden eingeblendet aber nicht wie
> gewollt als commando ausgefuehrt.

Das screen-commando echo dient dazu dem Nutzer in der untersten Zeile
etwas mitzuteilen.

>
> Ich habe auch mal
>
> $ screen -S testsession -X exec echo "beep"
>
> probiert. Dann wird "beep" zwar duaerhaft in die session-console
> geschrieben aber trotzdem nicht ausgefuehrt.

Was da genau passiert verstehe ich so auch nicht genau. Zudem verhält
sich mein screen dabei scheinbar nicht komplett reproduzierbar.
Zumindest habe ich den genauen Zusammenhang noch nicht entdeckt (Screen
version 4.00.02 (FAU) 5-Dec-03).
Es ist etwas anderes ob ich die session schonmal attached hatte oder
nicht. Wobei das ausführen auch nach einem anhängen mit "-x" oder auch
mit "-r" bei mir immer klappt.
Folgendes getestet.
screen -dm gestartet und auf anderer Konsole screen -X exec top:
Nichts passiert.
screen ohne alles gestartet und auf anderer Konsole screen -X exec top:
top erscheint
screen -dm gestartet mit screen -x eingehängt und auf anderer Konsole
screen -X exec top:
top erscheint

Alles das ist aber nicht das gleiche wie anhängen, am bash-Prompt
eintippen und <Enter> drücken. Bei obigem wird nur dir Ausgabe des
Kommandos in den aktuellen Kontext gepipet.

Ich hatte auch anfangs (jetzt merkwürdigerweise nicht mehr) mal ein "...
not found" in der untersten Zeile in einer Eingehängten session
beobachtet, wenn ich echo/top ohne Pfad angegeben hatte. Mit Pfad ging
es schon. So wie ich die manpage verstehe sollte es ohne Pfad auch gar
nicht gehen.
>
> Kann mir da jemad weiterhelfen?

Du könntest versuchen screen mit debugging zu kompilieren und dann ins
logfile schauen. Oder du spielst noch etwas mit den optionen rum.
Ich vermute screen -dm aktiviert das window irgendwie noch nicht.
Es bringt auch nichts das Kommando "log" an eine solche session zu
schicken. Erst nach einmaligem attachen der Session wird dann ein
logfile erzeugt.

mfg
Axel


< Previous Next >
Follow Ups
References