netcatにPC1(IP:10.0.0.1)の特定のポートをリッスンさせるとしましょう。
PC1:~$ nc -l 9999
PC2(IP:10.0.0.2)で接続し、一部の文字列を送信します。
PC2:~$ nc 10.0.0.1 9999
hello
touchit
test
what's up
touchit
bye
PC2から「touchit」を送信するたびに、「touch test.txt」コマンドがPC1で実行されるようにPC1の最初のコマンドをどのように変更しますか?
標準コマンドとパイプを賢く組み合わせてこれを実行することをお勧めします。もちろん、「touch test.txt」はどのコマンドでも置き換えることができます。 PC2から送られた別のコマンド文字列を使って他のプログラムを起動することもできれば良いでしょう。
ベストアンサー1
あなたは次のようなものが欲しい:
echo -e "foo\ntouchit\nbar\nbaz" | while read line; do case $line in
touchit) touch test.txt;;
bar) echo bar found;;
esac; done