Mengganti nama nama file tidak valid di NTFS

9

Baru-baru ini, saya meminjamkan flash disk saya ke salah satu teman saya, yang memiliki Mac OS. Dia menyalin file di atasnya, yang namanya termasuk backslash (\).

Flash disk diformat NTFS. Windows tidak mengizinkan nama file seperti itu, dan tidak membuka file, atau menghapusnya, atau membiarkan saya menghapus file.

Ada pendekatan naif untuk masalah ini, seperti:

  • Memformat flash disk;
  • Memberikannya kembali ke teman saya dan meminta untuk mengganti namanya;
  • Memuat ke beberapa Linux langsung dan mengganti nama.

Namun, saya mencari sesuatu yang lebih pintar, seperti program yang dapat melakukan trik di bawah Windows.

PS: Ada alat yang disebut NTFSWalker yang dapat menelusuri catatan MFT dari NTFS, tetapi tidak dapat membuat perubahan apa pun pada mereka.

MS Dousti
sumber
2
Anda akan menemukan Cara memaksa Windows XP untuk mengganti nama file dengan karakter khusus? bacaan yang bermanfaat juga - satu-satunya jawaban nyata di sana adalah menggunakan Linux.
DMA57361
Coba Periksa Disk. (Klik kanan pada ikon disk → Properti → Alat → di bawah Pemeriksaan kesalahan, klik Periksa Sekarang → centang Memperbaiki kesalahan sistem file secara otomatis.) Ini adalah salah satu saran dalam pertanyaan terkait di atas, tetapi tidak pernah dicoba.
Bavi_H
@Bavi_H: Maaf, Periksa Disk juga tidak berfungsi.
MS Dousti

Jawaban:

5

Semua Win32 API menggunakan backslash sebagai pemisah direktori. Ada kemungkinan kecil bahwa subsistem POSIX menerimanya sebagai bagian dari nama file, sehingga Anda dapat mencoba mvdari Services for Unix .


Saya tidak akan mengatakan menggunakan Linux untuk memperbaikinya adalah "naif", jika Unix yang memecahkannya.

pengguna1686
sumber
Saya sudah mencoba mvsebelumnya. Itu tidak berhasil.
MS Dousti
Tentang "naif": Maksud saya beberapa solusi yang muncul di pikiran pada awalnya.
MS Dousti
@ Sadq: Yang mana mvyang kamu bicarakan?
user1686
2
@ Sadq: Keduanya adalah program Win32 biasa. Saya secara eksplisit menyebutkan Layanan untuk Unix karena suatu alasan - programnya berjalan dalam subsistem "POSIX" yang terpisah , dengan aturan yang berbeda dari yang ada di Win32.
user1686
1
Subsistem POSIX juga digunakan NtOpenFileuntuk membuka file, dan NtOpenFilememperlakukan path secara keseluruhan, bukan sebagai serangkaian komponen (ada bendera untuk menggunakan semantik "POSIX", tapi itu hanya untuk sensitivitas huruf besar-kecil) - jadi ia mengikuti aturan yang sama.
user541686
3

Saya telah menemukan bahwa 7zip sering dapat menangani file aneh ketika Windows gagal (berguna untuk jalur yang terlalu lama untuk dihapus secara normal) - berikan itu saat dicoba.

Dentrasi
sumber
Maaf. 7zmemberikan kesalahan yang sama seperti Windows.
MS Dousti
Juga tidak bekerja untuk saya
Mark Jeronimus
2
7z mengerjakan beberapa keajaiban untuk kasus saya, yang merupakan nama file yang diakhiri dengan karakter ruang yang tidak sesuai. Saya mencoba banyak utilitas untuk menangani ini tetapi hanya 7z yang berfungsi.
Mike Simpson
2

Anda dapat menggunakan CHKDSK /Fdari DOS prompt untuk memperbaiki kesalahan, dan kemudian di RD /S <DIR>mana <DIR>direktori yang ingin Anda hapus. Hati-hati karena ini akan menghapus direktori dan semua sub-direktori.

julian
sumber
-1

Saya membuka folder dengan file karakter yang tidak dapat diakses di file manager 7zip. Di sana, saya menamainya dan BINGO, namanya diganti. Jadi saya bisa mengakses file.

7zip adalah utilitas kompresi file freeware, lebih baik daripada RAR.

Arun
sumber
5
Bukankah jawaban Anda sama dengan Dentrasi?
MS Dousti