我是 bash 脚本的新手,我在命令的聚合方面遇到了问题。正是在这行代码中:
timeout -s 9 1 echo $var | nc localhost port
Run Code Online (Sandbox Code Playgroud)
我正在尝试通过 netcat 将变量 var 的数据发送到特定端口中的 localhost,并且我想将该命令超时 1 秒。阅读 timeout 的手册页我明白它应该被用作:
timeout -s SIGNAL TIME COMMAND
Run Code Online (Sandbox Code Playgroud)
我的问题是如何用管道命令 echo $var | 替换 COMMAND nc localhost 端口并进一步了解如何正确编写以下情况:
COMMAND1 | (COMMAND2 | COMMAND3)
Run Code Online (Sandbox Code Playgroud)
和
(COMMAND1 | COMMAND2) | COMMAND3
Run Code Online (Sandbox Code Playgroud)
如果我是对的,第二个例子相当于
COMMAND1 | COMMAND2 | COMMAND3
Run Code Online (Sandbox Code Playgroud)
但我不知道如何写第一个。