Bashでの1>&0の動作

Bashでの1>&0の動作

だから、ファイル記述子とそのリダイレクトについてもっと知りたいです。現在、私は極端なケースを調査していますが、そこで1>&0何が起こっているのかよく理解していません。

$ echo hello 1>&0
hello

したがって、この場合、hellostdoutをstdinにリダイレクトしても印刷されます。私は何も印刷されるとは思わない。

hello印刷したい理由を説明してください。

ベストアンサー1

記述子01両方が読み取り+書き込みモードで端末に接続されているため、このリダイレクトは何も変更しません。 Linuxでは、/proc/self/fd以下のような現在の記述子をすべて見つけることができます。

$ ls -l /proc/self/fd
lrwx------ 1 jimmij jimmij 64 Jan  3 17:42 0 -> /dev/pts/2
lrwx------ 1 jimmij jimmij 64 Jan  3 17:42 1 -> /dev/pts/2
lrwx------ 1 jimmij jimmij 64 Jan  3 17:42 2 -> /dev/pts/2
lr-x------ 1 jimmij jimmij 64 Jan  3 17:42 3 -> /proc/5263/fd

ご覧のとおり、すべてが0疑似端末に接続されています。12/dev/pts/2

おすすめ記事