File-Descriptors
預設分配的文件描述符 3 是什麼?
$ ls -og /proc/self /proc/self/fd lrwxrwxrwx 1 64 Jun 18 11:12 /proc/self -> 32157 /proc/self/fd: total 0 lrwx------ 1 64 Jun 22 2012 0 -> /dev/tty1 lrwx------ 1 64 Jun 22 2012 1 -> /dev/tty1 lrwx------ 1 64 Jun 22 2012 2 -> /dev/tty1 lr-x------ 1 64 Jun 22 2012 3 -> /proc/32157/fd
預設分配的文件描述符 3 是什麼?
什麼都沒有:有三個標准文件描述,STDIN、STDOUT 和 STDERR。它們分別分配給 0、1 和 2。
您所看到的是一種工作方式
ls(1)
:為了讀取/proc/self/fd
目錄的內容並顯示它,它需要打開該目錄。這意味著它得到一個文件句柄,通常是第一個可用的……因此,3。
例如,如果您要
cat
在單獨的控制台上執行並檢查/proc/${pid}/fd
它,您會發現只分配了前三個。