Linux
為什麼同一個目錄 /dev/fd/ 的 ls 輸出根據引用該目錄的方法不同?
cd /dev/fd/; ls
給我我期望的輸出:
0 1 2 255
但:
ls /dev/fd/
給出了我沒想到的不同輸出:
0 1 2 3
為什麼?這裡會發生什麼?文件描述符 255 發生了什麼?什麼是文件描述符 3?
cd /dev/fd/; ls
顯示 shell 的文件描述符:
cd
更改 shell 的文件描述符目錄,並ls
顯示其內容。ls /dev/fd/
顯示
ls
的文件描述符。文件描述符 3 是列出的目錄ls
:ls -l /dev/fd/
將顯示它指向,程序標識符
/proc/.../fd
在哪裡。...``ls
/dev/fd
如果您看一下它本身,可能會更容易理解這一點:ls -ld /dev/fd
在 Linux 上,它指向
/proc/self/fd
.