Im Folgenden beschreibe ich, mit was ich kämpfte und die Entscheidung, dass ich zur Zeit kam. Bitte weisen Sie mich auf die klüger/kleinere Entscheidungen, wäre auch gerne Rückmeldung erhalten.Bash: wie Telnet oder NC im Hintergrund arbeiten, bis die Verbindung geschlossen ist
Also, es gibt einen Verleger und einen Client auf einem localhost, sie kommunizieren über Port 8080. Ich kann telnet oder nc zu diesem Port und schreiben Ausgabe in ein Protokoll normal, aber kann nicht die gleichen Befehle im Hintergrund arbeiten.
Was ich sehe, ist, dass, wenn im Hintergrund gestartet sie stoppen sofort nach dem ersten Eingang bekommen (ist es wirklich so?), aber im Vordergrund sie arbeiten, wie sie sollten und sterben erst nach Verlag Verbindung an diese schließt Hafen.
Dies ist, was normalerweise auftritt:
> telnet localhost 8080 | tee output.log (or >>output.log, no matter)
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Verlag startet Informationen über den Port zu senden.
***some necessary output***
Publisher schließt den Port.
Connection closed by foreign host.
Aber wenn im Hintergrund gestartet stoppt sofort, ohne für die Ausgabe zu warten:
> nohup telnet localhost 8080 | tee output.log (or <command> &, or nohup <command> &)
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.