# Commands an laufenden Prozess senden



## Lil-rich (13. November 2007)

Hallo Leute,

ich stecke mal wieder total fest. Ich beschäftige mich derzeit viel mit Linux und Server-Anwendungen und habe nun folgendes Problem:

Wenn ich eine Serveranwendung A starte und sie mit dem Befehl "screen ...." starte, ist sie ja im Hintergrund. Wie kann ich nun an diese im Hintergrund laufende Anwendung bestimmte Befehle senden ? Also mit "screen -r ..." poppt das wieder hoch, aber kann man auch ohne den Screen zu öffnen Befehle hinsenden ? zB per Shell-, Bashscript oder sowas ?

Vielen Dank schonmal !


----------



## Sinac (13. November 2007)

Also eigentlich nutzt man screen nicht um Server im Hintergrund laufen zu lassen, dazu gibt es Init Scripte die den Prozess als Daemon starten. Natürlich kann man screen dazu nutzen, aber das ist wohl bei den meisten Anwendungen nicht State of the Art. Wie du mit dem Prozess kommunizierst kommt auf die Anwendung an, was läuft da denn für ein Programm.


----------



## Lil-rich (13. November 2007)

Es läuft ein privater WoW-Server für mich und ein paar Freunde... Wir wollen halt einfach ein paar Dinge ausprobieren  Das geht los indem man die Datei "ascent" per "./ascent" startet. Dann sieht man eben wie der Server hochfährt usw. und dann läuft das in einer Schleife. Dort kann man dann zB Commands wie "announce MESSAGE" eingeben und er macht das dann. Wenn man aber dann Putty nicht offen lässt, schaltet sicher der Server wieder ab. Außer man benutzt eben Screen. Und ich weiß eben nicht, wie ich dann zB "announce MESSAGE" schicken kann, ohne immer Screen zu öffnen und dann wieder zu schließen. Ich will es dann evtl auch in ein zeitgesteuertes Script einbauen und daher muss es eben automaitsch auch gehen :suspekt:


----------



## zeroize (14. November 2007)

Also Prozesse kann man mit einem nachgestellten "&" also z.B. "programm1 &" im Hintergrund starten, oder mit dem startet das Programm drückt die Tastenkombination [STRG + Z] und anschließend bg (background).

Mit fg (foreground) soll man dann das Programm wieder in den Vordergrund holen können.

Mit "jobs" lässt man sich die Programm anzeigen.


----------



## Lil-rich (14. November 2007)

Ja soweit so gut, danke, aber das war ja nicht die eigentliche Frage 

Es ging ja lediglich darum, wie ich dann automatisch/per Script ein Kommando an diesen Prozess senden kann ! Also wenn ich nich eingeloggt bin, soll er zB alle 5 Minuten das Kommando "Hallo" an diesen Prozess senden. Hierbei geht es mir aber auch nciht um alle xx Minuten sondern wie bereits mehrmals erwähnt nur um das Senden des Befehls


----------



## deepthroat (14. November 2007)

Hi.


```
screen -X stuff "nachricht...."
```
 "man screen"!

Gruß


----------



## zeroize (14. November 2007)

Und mit nem schicken Shellscript [und ggf. cron] kann man mit der einer oder anderen Variante hervorragend alle 5 Minuten Nachrichten versenden.


----------

