30

Как я могу заставить netcat немедленно отправлять свои данные, а не только на новых строках? Я хочу вручную проверить парсер HTTP и проверить, как он себя ведет, когда строки заголовка распределены по нескольким пакетам.

1 ответ1

37

Используйте клавишу "eof", Ctrl D. При нажатии в середине строки он выдаст netcat все, что было введено в этой точке.

Буферизация фактически выполняется слоем tty и не обрабатывается nc вообще. stty -icanon && nc ... отключит буферизацию и позволит nc видеть данные по мере их ввода в терминал, после чего они будут отправлены сразу. (Обратите внимание, что команды stty и nc должны выполняться вместе, в противном случае сама оболочка, вероятно, включит ее снова при отображении своего приглашения.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .