
Kshでは、コマンドからのI/Oを標準出力/エラーからリダイレクトするために、次のようにします。[コマンドは出力/エラーを生成する任意のコマンドです]
command 2>filename
command 2>/dev/null
または
command &>filename
command &>/dev/null
bashでは、次のようなコードをよく見かけます。
command >&/dev/null
&
同じことが使用することで達成できる場合、その追加は何を意味しますか?
command> /dev/null
何か素晴らしいことを見逃していることはわかっていますが、学べて嬉しいです。
編集: いわゆる重複した質問で尋ねられている 2>&1 が何であるかは知っていました。1 はファイル記述子を示すので、それを参照するには & が必要だと説明されました。ファイル名の前に & があるのを見て困惑しました。そこでこの質問をしました。
答え1
>&fname
と同じです
>fname 2>&1
つまりリダイレクトする両方stdout と stderr をファイル に出力しますfname
。詳細な説明については、bash(1)
マニュアルページの セクションREDIRECTION
(特に の部分) を参照してください。Redirecting Output