經常碰到windows中的路徑變成這樣的形式:
d:\ibm\wcde_e~1
一直以為這種路徑是隨機的,今天才發現原來這類路徑也是有效的,它其實是有縮寫規則的,美其名曰「dos 8.3命名規則」,詳情可見微軟官方文件。
這種命名規則簡單說來是用8個字元縮寫來代替檔案(或目錄)全名,對於目錄,可以寫頭六個字母(略去空白),另加波浪號和1;如果首字母不足六個字母,略去空格,用了第二個詞的字母,湊成六個,再按規則繼續處理。
例如:
documents
andsettings
可表示為
docume~1
又如:
local settings
可表示為
locals~1
如果多個檔案前6字元一樣,則按dir中的輸出順序累計下去。
假設下面是你的c盤根目錄中的資料夾:
program files
program files (x86)
則兩個目錄分別表示為:
progra~1
progra~2
當然,用「dir /x」命令可以方便地幫助您檢視系統對目錄或檔名的縮寫,如:
d:\>dir /x
volume in drive d is software
volume serial number is 0e98-df31
directory of d:\
01/06/2012
09:18 pm cygwin
01/17/2012
04:07 pm develop
01/19/2012
04:13 pm email
01/18/2012
03:06 pm games
01/18/2012
01:24 pm ibm
12/01/2006
11:37 pm 904,704 msdia80.dll
01/16/2012
02:06 pm progra~1 program files
01/19/2012
08:15 am progra~2 program files (x86)
12/29/2011
09:56 pm server
1 file(s) 904,704 bytes
8dir(s) 18,078,625,792 bytes free
windows批量修改檔名或去掉檔名中的字串
複製下面 到乙個txt文字中,將字尾名修改為bat,雙擊執行即可。操作方式如下圖 這裡我去掉了新建兩個字。注意編碼問題,如果開啟是亂碼,請先檢視cmd的屬性,然後將文字儲存為對應字元編碼。複製下方 echo off set p str1 請輸入要替換的檔案 資料夾 名字串 可替換空格 set p s...
linux下檔案數 目錄數 檔名長度的各種限制
coofucoo 寫的乙個程式需要密切關注這些系統特徵,以避免把系統寫壞。實際上現在出現過由於異常寫入大量檔案到乙個目錄中導致檔案系統無法列目錄的情況,連刪除都不行。但是linux還是相當健壯,至少我呼叫系統api刪除還是可行的,真救命。refer 以下測試都是在沒有優化或修改核心的前提下測試的結果...
linux下檔案數 目錄數 檔名長度的各種限制
以下測試都是在沒有優化或修改核心的前提下測試的結果 1.測試目的 ext3檔案系統下filename最大字元長度 測試平台 rhel5u3 x64 測試過程 lenth for i in do for x in a do echo n x done done touch lenth 當增加到256時...