経営者に憧れるエンジニアめも

経営者になって好きなことをやりたいエンジニアめも

標準出力で使う '&' について(アンドマークについて)

色々調べたけど & について

上手く説明してくれる人が居なかった。

やっと見つけた & の説明と

command > /dev/null 2>&1

ついてわかりやすく教えてくれる方

 

---


>&
これで出力ファイル・ディスクリプタ(記述子)の複製を行います。

したがって、
2>&1
この場合、ファイル・ディスクリプタ2に、ファイル・ディスクリプタ1の複製を使用するという意味になります。
これらはbashのmanコマンドで詳しく解説されています。

リダイレクトは左側から評価されるので、最初に
command > /dev/null
が評価され、標準出力が/dev/nullを指すようになります。
続いて、
2>&1
が評価されて、標準エラー出力が標準出力の複製となります。このとき、最初の評価で標準出力は/dev/nullを指しているので、結局、標準エラー出力として与えられる「標準出力の複製」は/dev/nullとなります。

---

 

goo の方ありがとう!

シェルコマンドの 2>&1 とはどういう意味でしょうか? -command > /de- その他(プログラミング・Web制作) | 教えて!goo