標準エラーと標準出力の両方を出力するプログラムがあり、標準エラーでのページャーの実行を減らしたいが、標準出力は無視したい。それ、どうやったら出来るの?
アップデート:
それだけです...標準出力を失いたくありませんでした...ページャーから外してください
program 2>&1 >log | less
じゃあ後で
less log
標準エラーと標準出力の両方を出力するプログラムがあり、標準エラーでのページャーの実行を減らしたいが、標準出力は無視したい。それ、どうやったら出来るの?
アップデート:
それだけです...標準出力を失いたくありませんでした...ページャーから外してください
program 2>&1 >log | less
じゃあ後で
less log
標準出力を /dev/null にリダイレクトすることもできますが、標準エラーは標準出力が使用していた場所にリダイレクトします。
ksh/bash での例:
program 2>&1 >/dev/null | less
ここで、ファイル記述子 2 (stderr) をファイル記述子 1 (stdout) と同じストリームを指すように設定するリダイレクト 2>&1 は、ファイル記述子 1 を /dev を指すように設定するリダイレクト >/dev/null の前に評価されます。 /ヌル。その結果、stderr に書き込んだものが stdout に送信され、stdout に書き込んだものが破棄されます。