この数行のスクリプトを書きたいです。
mkfifo my.fifo
cat >my.fifo &
cat my.fifo | nc remotehost.tld 10000
しかしライン
cat >my.fifo &
手動で実行すると機能しますが、bashシェルを介しては機能しません。なぜですか?
答え1
1) 最初のファイルを生成する
#!/bin/bash
mkfifo my.fifo
trap 'rm -f my.fifo' EXIT
cat <my.fifo &
cat >my.fifo;
nc localhost 2345
2) 他の端末で
cat >my.fifo