我在嘗試將具有特定掩碼的所有文件複製到另一個目錄時遇到文件選擇問題。如何在執行DIR或FOR批處理命令時忽略8.3名稱
我想出的代碼是:
FOR %%g IN (mylocation\T113*) DO (
copy %%g otherlocation\T113Files\
)
文件被命名爲喜歡T11300A1_xxxxx
沒有擴展名。在同一目錄中還有其他的文件以及:
T11200A1_xxxxx T14000A1_xxxxx
當Windows生成的短名,我發現它的行爲:
從Windows 2000開始,如果至少有4個文件或文件夾在短名稱中已經存在相同的前6個字符,剝離的LFN被截斷爲基本名稱的前2個字母(或1,如果基名只有1個字母),後接4個十六進制數字,從未公開的散列文件名,後面跟一個波浪號,後跟一個數字,後跟一個句點.
,然後是擴展名的前3個字符。
會發生什麼事是,我的所有文件的短名稱因此T1hash
,有時T14000A1_xxxxx
文件可以有一個簡短的名字T113xx~1
因爲散列部分即1357
,然後它被轉移時,它不應該。
有沒有辦法告訴for
循環忽略8.3名稱,只看長名?
'copy'採用通配符,爲什麼要使用'for'循環來複制文件? – Tomalak