ls -l 顯示 /proc 中檔案的檔案大小為 0,但 cat 產生內容

ls -l 顯示 /proc 中檔案的檔案大小為 0,但 cat 產生內容
# cat /proc/version
Linux version 2.6.18-308.8.2.el5.028stab101.1 (root@rhel5-build-x64) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) #1 SMP Sun Jun 24 20:25:35 MSD 2012
# ls -l /proc/version
-r--r--r-- 1 root root 0 Aug 22 10:07 /proc/version

文件大小報告為 0,但它有內容。這是如何運作的?

是不是因為/proc是某種虛擬檔案系統?

哪個命令可以顯示檔案的確切大小/proc

答案1

這是因為你在proc檔案系統中。查看更多信息procfs 是什麼

/proc/version,包含 Linux 內核版本、發行版號、gcc 版本號(用於構建內核)以及與當前運行的內核版本相關的任何其他相關信息

這些不是真正的文件。這是將進程資訊顯示為檔案層次結構的便捷方法。


編輯:

我知道這是不真實的,但是如果我想知道它的大小我該怎麼辦?

您沒有從 獲得它ls,但您可以嘗試使用wc

# wc -c /proc/version
138 /proc/version

相關內容