Wie kann ich Netcat zwingen, meine Eingabe sofort zu senden und nicht erst bei Zeilenumbrüchen?

Wie kann ich Netcat zwingen, meine Eingabe sofort zu senden und nicht erst bei Zeilenumbrüchen?

Wie kann ich Netcat zwingen, meine Eingabe sofort zu senden, nicht nur bei Zeilenumbrüchen? Ich möchte einen HTTP-Parser manuell testen und überprüfen, wie er sich verhält, wenn Headerzeilen auf mehrere Pakete verteilt sind.

Antwort1

Verwenden Sie CtrlD, das standardmäßig als TTY- eofTaste eingestellt ist. Wenn Sie es mitten in einer Zeile drücken, wird alles, was an dieser Stelle eingegeben wurde, an netcat weitergegeben.

Das Puffern wird tatsächlich von der TTY-Schicht durchgeführt und ncüberhaupt nicht von gehandhabt. stty -icanon && nc ...würde das Puffern deaktivieren und es ermöglichen, ncdie Daten anzuzeigen, während sie in das Terminal eingegeben werden. An diesem Punkt werden sie sofort gesendet. (Beachten Sie, dass die Befehle sttyund nczusammen ausgeführt werden müssen, da die Shell sie sonst wahrscheinlich selbst wieder aktivieren würde, wenn sie ihre Eingabeaufforderung anzeigt.)

verwandte Informationen