UNIXでstdoutパイプとstderrパイプnn kshをリダイレクトする方法はありますか? (Linuxではなく)。ksh stdoutとstderrを別のプロセスにリダイレクト
次は、ファイルにリダイレクトするように動作します:
x=0
while [[ "$x" -lt 100 ]]; do
echo "junk" >&2
echo "$x log test"
echo "junk err" &>2
echo "$x err test" >&2
x=$(($x+1))
done 2>out1.err 1>out1.log
私は次のように、他のプロセスにパイプをリダイレクトするようなものを試してみたが、これは動作しません:
x=0
while [[ "$x" -lt 100 ]]; do
echo "junk" >&2
echo "$x log test"
echo "junk err" &>2
echo "$x err test" >&2
x=$(($x+1))
done 2>&3 | sort -u > out2.log 3>&1 | sort -u > out2.err
はそれがbashのマニュアルへのリンクだ、 'kshの' タグを逃しました。それにもかかわらず、構文は同じです。 –
ありがとうございます。@ Mathtick:コマンド/プロセスの置き換えの例をリンクしています:http://www.linuxjournal.com/article/2156?page=0,1 – tomkaith13