# Output von 'screen' auf Terminal umleiten



## Eiszwerg (4. Januar 2012)

Moin Moin,

ich gebe zu, der Titel sagt vllt. nicht so klar, was gemeint ist, daher hier nun die ausführliche Beschreibung meines Problems:

Ich habe einen v-Server, auf welchem ich mittels 'screen' einen Game-Server laufen lasse, welcher eine eigene Konsole mit sich bringt.

Möchte ich nun zB die Liste der Spieler angezeigt bekommen, kann ich mich mit 
	
	
	



```
screen -r gameservername
```
 auf die Console des Gameservers verbinden und dort das Kommando für die Spielerliste ausführen und mir das Ergebnis angucken.

Ich würde aber gerne darauf verzichten, mich erst mittels 
	
	
	



```
screen -r gameservername
```
verbinden zu müssen.
Ich kann ja zB mit 
	
	
	



```
screen -S gameservername -X stuff $'list\n'
```
 das Kommando an 'screen' senden, bekomme dann aber kein direktes Output.

Die Frage lautet also: wie bekomm ich "von aussen" das Output von 'screen' angezeigt. Kann man das irgendwie umleiten?

Danke


----------



## melmager (13. Januar 2012)

Eiszwerg hat gesagt.:


> Ich kann ja zB mit
> 
> 
> 
> ...



so ganz verstehe ich nicht was du denn beim aufruf vom screen befehl bekommst - wenn eine Ausgabe auf der Konsole ist dann kann man das natürlich umleiten 
fragt sich nur wohin umleiten ?

z.B in eine Datei umleiten geht mit > Zeichen

also 
ls -als > listing.ausgabe
erzeugt eine Datei listing.ausgabe in dem das ergebnis vom Befehl "ls -als" drin ist


----------



## Eiszwerg (13. Januar 2012)

Moin Moin,

da scheint ein Mißverständnis vorzuliegen 

Ich bekomme nach dem Aufruf des screen-Befehls keine Ausgabe auf der Console, sondern in der Console des Gameservers auf dem entsprechenden Screen.
Ist also quasi das gleiche, als würde ich "list" auf der Game-Server-Console im screen _gameservername_ ausführen.
Und genau diese Ausgabe will ich auf der eigtl. Console haben, um mir halt das _screen -r_ zu sparen.
Args. Blöde zu erklären :-/


----------



## melmager (13. Januar 2012)

Eiszwerg hat gesagt.:


> , sondern in der Console des Gameservers auf dem entsprechenden Screen.



wenn die Gameserver Console so arbeitet wie eine UNIX Console kann man es umleiten ..wenn dat nicht so ist - schulternzuck

leider habe ich null Plan von Gameservern

screen -S gameservername -X stuff $'list\n' > test.datei

erzeugt der Game server eine Datei "test.datei" - wenn ja gewonnen wenn nein - muss ich passen


----------



## Eiszwerg (14. Januar 2012)

Leider hab ich das schon ergebnislos probiert. Dennoch vielen Dank für Deine Mühe


----------



## deepthroat (16. Januar 2012)

Hi

Das Problem dabei ist ja folgendes:

Die Konsole des Gameservers läuft unter screen.

Du sendest ein Kommando.

Du möchtest dann, dass die Ausgabe für dieses gesendete Kommando umgeleitet wird.

Wie würdest du denn jetzt feststellen wo die aktuelle Ausgabe beginnt und wo sie aufhört?

Ansonsten kann man mit dem exec Befehl von screen schon so etwas machen.

Aber wie gesagt, du müßtest auch das Ende finden um die Umleitung wieder abzubrechen.

Oder du leitest die Ausgabe immer auch in eine Datei um (screen log Kommando). Die kannst du dann auch von "außerhalb" lesen.

Gruß


----------

