0

我正在尝试使用 Netcat 向 IP 摄像机发送一堆命令。我的问题是发送多个命令。这工作正常:

echo get_video_state | nc -u -i 1 -w 5 192.168.xxx.xx 60000

并返回期望值"is_stopped"

但是,当我尝试这样的几个命令时:

echo get_video_state | echo get_resolution | nc -u -i 1 -w 5 192.168.xxx.xx 60000

我希望首先'get_video_state'发送参数,然后延迟 1 秒(因为 -i 1),然后是-get_resolution'. 但是,仅返回分辨率。

有人对这个有经验么?

4

1 回答 1

2

管道(“|”)将一个命令的输出重定向到另一个命令的输入,因此echo get_video_state | echo get_resolution | nc -u -i 1 -w 5 192.168.xxx.xx 60000无法正常工作,因为第一个回显的输出被重定向到第二个回显。您必须单独运行这些命令,然后将它们的输出重定向到 netcat。你可以这样做:

(echo get_video_state & echo get_resolution) | nc -u -i 1 -w 5 192.168.xxx.xx 60000
于 2012-02-27T11:31:31.203 回答