『壹』 linux文件名的長度不能超過多少個字元
題主你好,
這個長度不是絕對的, 但大多數的linux系統:
文件名長度限制是255個字元;
路徑名長度限制是4096個字元;
-----
具體情況題主可以在自己電腦上執行以下兩個命令看一下自己本地的linux系統這兩個長度情況:
文件名最大長度: getconf NAME_MAX /
路徑名最大長度: getconf PATH_MAX /
我電腦上的情況:
-----
另外,這個信息其實都在linux一個名叫limits.h的頭文件中寫著呢, 有興趣的話,題主自己可以找一下:
find /usr | grep limits.h | xargs -I {} grep -H 'NAME_MAX' {}
find /usr | grep limits.h | xargs -I {} grep -H 'PATH_MAX' {}
=====
希望可以幫到題主, 歡迎追問.
『貳』 Linux "ls -al"查看 所有目錄的文件容量都是4096Bytes是怎麼回事
在Linux下一切皆文件,因此目錄也是文件。所以,通過ls -al命令顯示的目錄大小並非常規意義上包含其子文件的總大小,而是單純指的是目錄的大小。這一點和Windows並不一樣。
請注意一點,其實Linux下目錄的大小並不都是4096的。
那麼為什麼大部分的目錄大小都是4096呢?這需要從Linux文件的存儲機制說明。
文件儲存在硬碟上,硬碟的最小存儲單位叫做「扇區」(Sector)。每個扇區儲存512位元組(相當於0.5KB)。
操作系統讀取硬碟的時候,不會一個個扇區地讀取,這樣效率太低,而是一次性連續讀取多個扇區,即一次性讀取一個「塊」(block)。這種由多個扇區組成的「塊」,是文件存取的最小單位。「塊」的大小,最常見的是4KB,即連續八個 sector組成一個 block。
文件數據都儲存在「塊」中,那麼很顯然,我們還必須找到一個地方儲存文件的元信息,比如文件的創建者、文件的創建日期、文件的大小等等。這種儲存文件元信息的區域就叫做inode,中文譯名為「索引節點」。
每一個文件都有對應的inode,裡麵包含了與該文件有關的一些信息。
而Linux系統中,目錄(directory)也是一種文件。打開目錄,實際上就是打開目錄文件。目錄文件的結構非常簡單,就是一系列目錄項(dirent)的列表。每個目錄項,由兩部分組成:所包含文件的文件名,以及該文件名對應的inode號碼。
所以ls -al命令實際顯示的就是目錄文件的大小。又因為OS定義的文件最小存取單位「塊」(block)是4KB,所以目錄一般顯示為4096B。
如果你需要看目錄的總大小可以用 命令,樓上說的很詳細了。
PS:OS系統塊的大小是可以修改的。
『叄』 Linux中-ls的總用量指什麼(如圖)紅方框裡面分別的指什麼
應該是該目錄下所有文件及子目錄文件佔用的總空間大小 ,不是文件大小