如何在命令仍在运行时读取Bash中的命令输出

时间:2018-02-15 08:40:56

标签: bash shell udp sh

我需要读取UDP发送的数据。我使用while read VAR do my_command done < <(nc -ul 50000) 。它在收到一条线后仍然继续运行。我希望在它到达时阅读每一行。 我怎样才能做到这一点?

对Stackexchange上另一个问题的回答建议使用类似

的内容
<QuerySet [<User: admin>]>

但是这并没有做到这一点......没有读过任何东西。 我非常感谢您提供的任何帮助,因为我真的不知道如何做到这一点。

1 个答案:

答案 0 :(得分:1)

您可以强制程序使用

的行缓冲或无缓冲输出

stdbuf -o L nc -ul 50000

(将“L”替换为“0”(零)以获得完全无缓冲的输出)