Prozess mit Daten versorgen...

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
katze
Beiträge: 74
Registriert: 08.01.2005 17:27:47

Prozess mit Daten versorgen...

Beitrag von katze » 09.02.2006 17:12:54

Ich hab folgendes Problem:

Ich hab hier einen Server, auf den ich mit SSH zugreife...
Dort will ich ein Programm ausführen, das länger laufen soll, als meine Shell -> Also starte ich es mit nohup.
Gibt es jetzt noch eine Möglichkeit diesem Prozess über STDIN Daten zu liefern (wenn ich mich z.B. mit einer anderen Shell einlogge)?

Wenn ja, wie?

Danke im vorraus :)

mfg
katze
Eine wesentlicher Grund für den Untergang des Römischen Reiches, der bisher völlig außer Acht gelassenen wurde, ist das Fehlen der Null im Zahlensystem der Römer, so daß sie keine Möglichkeit hatten, das erfolgreiche Beenden ihrer C-Programme zu übermitteln.

DeletedUserReAsG

Beitrag von DeletedUserReAsG » 09.02.2006 17:16:28

Named pipe?

cu

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 09.02.2006 20:40:43

ja, geht einfach über named pipes (fifo):

Code: Alles auswählen

root@gms1:~/tmp# cat x.sh
while true; do
  read line
  [ -n "$line" ] || continue
  echo "`date`: received $line"
done
root@gms1:~/tmp# mkfifo xfifo
root@gms1:~/tmp# nohup ./x.sh <xfifo &
[1] 21338
root@gms1:~/tmp# echo "line1" >>xfifo
nohup: hänge Ausgabe an ,,nohup.out" an
root@gms1:~/tmp# echo "line2" >>xfifo
root@gms1:~/tmp# echo "line3" >>xfifo
root@gms1:~/tmp# cat nohup.out
Don Feb  9 20:39:52 CET 2006: received line1
Don Feb  9 20:39:59 CET 2006: received line2
Don Feb  9 20:40:02 CET 2006: received line3
Gruß
gms

Benutzeravatar
katze
Beiträge: 74
Registriert: 08.01.2005 17:27:47

Beitrag von katze » 10.02.2006 19:02:36

Nö, hat nich funktioniert. Ich glauber es lag daran, dass das Programm seine Daten nicht über STDIN gelesen hat.
Dafür hab ich mich jetzt aber mit screen angefreundet. Dann brauch ich auch das nohup nicht mehr, mit dem ich den prozess garnicht mehr abbrechen kann...

Aber vielen Dank nochmal!

mfg
katze
Eine wesentlicher Grund für den Untergang des Römischen Reiches, der bisher völlig außer Acht gelassenen wurde, ist das Fehlen der Null im Zahlensystem der Römer, so daß sie keine Möglichkeit hatten, das erfolgreiche Beenden ihrer C-Programme zu übermitteln.

Antworten