Filesystems
如何刪除名稱中包含“:”的 NTFS 文件系統文件?
幾天前,我在 NTFS 可移動硬碟中備份了一些 Linux 文件,這次我需要刪除這些文件。但我覺得很難,因為:
- 在 Windows 上,它抱怨“找不到這個項目”
- 在作業系統為ubuntu 12.04的虛擬機上,當我掛載硬碟(我猜它使用“ntfs-3g”)並使用“
rm
”時,它會抱怨“沒有這樣的文件或目錄”;甚至“ls
”文件都失敗了。那麼有什麼方法可以正確粉碎這個文件嗎?
chkdsk /f
在 Windows 上執行。它應該刪除帶有無效字元的文件或修復它們的文件名,以便可以手動刪除它們。
NTFS 支持“流”,例如 HFS+ 的“分叉”,並且不同於通常的 unix 文件系統上的任何東西。
Windows 上的約定是將流命名為文件名的一部分,用 分隔文件名和流名
:
,這就是為什麼你得到“找不到這個項目”——對於名稱“這裡:試試這個”,Windows在文件“here”中尋找流“try this”。我想你可以告訴 Windows 不要像這樣解析文件名,但我不知道怎麼做。ntfs-3g 有一個掛載選項來啟用兼容的流名稱解析,掛載 fs
-o streams_interface=windows
和 ntfs-3g 將:
在文件名中以相同的方式處理。所以要檢查這一點,mount|grep windows
應該工作得很好。