2016-08-25 97 views
2

我在服務器上找到了一些帶有特殊字符的文件。 該名稱是自動創建的,所以更改它們不是一個選項。DIR命令不能與特殊字符配合使用

下面的例子:

H:\>dir /b "LB_20136021 BÁKÁNY*" //search with wildcard! 

LB_20136021 BÁKÁNY MUVEK GÉPIPARI Kft..pdf    //file found! 

H:\>dir "LB_20136021 BÁKÁNY MUVEK GÉPIPARI Kft..pdf" //search with exact name! 

Datenträger in Laufwerk H: ist SATA 1TB 

Verzeichnis von H:\ 

Datei nicht gefunden         //"file not found"?!?! 

H:\> 

還有其他問題,在批處理文件中的命令。

是否有防止這種情況的溶劑,或者這是一個很好的例子,爲什麼不應該使用批處理腳本? (我還是很喜歡他們,但是在先進的腳本有這麼多討厭的問題...)

+0

這兩個__DIR__命令行都可以在我的電腦上使用控制檯中的OEM 850代碼頁。您的計算機使用哪個代碼頁作爲控制檯?打開命令提示符窗口並運行'mode'來查看使用的代碼頁。 – Mofi

+0

也許你的意思是命令「chcp」? 「模式」告訴我一些關於我的COM端口的狀態。 代碼頁是850(dos默認) –

+0

wtf,我剛剛創建了一個測試文件,其中 'echo asdf>「LB_20131449BÁKÁNYMUVEKGÉPIPARIKft..pdf」' 並且這個文件沒有問題! 原始文件必須有不同的東西! –

回答

1

還好,有些小時後,我覺得我有解決方案:

問題是MUVEK的U,因爲它是匈牙利名字,這是沒有ü而是ü

在DOS框中,直到您使用代碼852是不可見的(建議匈牙利)

所以這 BÁKÁNY MUVEK GÉPIPARI Kft. 變成這樣: BÁKÁNY MŰVEK GÉPIPARI Kft.

因此,如果你討厭某人,請使用此字符...