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リダイレクトするため、最初のエコーの出力が 2 番目のエコーにリダイレクトされるため、機能しません。コマンドを個別に実行してから、それらの出力を 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 に答える