Saya memiliki banyak file di kotak Ubuntu, yang memiliki berbagai karakter dalam nama file mereka yang tidak diterima Windows (kebanyakan ":" dan "*", tetapi mungkin yang lain).
Apa cara paling sederhana untuk mengganti nama semua ini dan pindah ke mesin Windows? Tidak apa-apa untuk mengganti karakter ini dengan sesuatu seperti "[titik dua]" dan "[tanda bintang]".
linux
rename
batch-rename
RomanSt
sumber
sumber
*
).:
, yang cukup buruk. Memberi nama dokumen setelah isinya berguna, dan jika nama artikel diakhiri dengan pertanyaan, maka sebaiknya nama filenya.Jawaban:
Lihatlah Glindra rename dan detox .
Utilitas file Glindra dapat diinstal pada Windows atau Linux. Contoh pembersihan nama file di Windows:
Maps memimpin tanda hubung (tanda hubung) ke garis bawah.
Runtuh spasi.
Memetakan karakter yang bermasalah seperti * ?: [] "<> | () {} untuk menggarisbawahi.
Melakukan operasi pembersihan yang sama seperti -safe, dan tambahan:
Memetakan semua karakter 8-bit dari bagian atas abjad Latin 1 ke karakter fallback 7-bit yang masuk akal.
Memetakan karakter kutipan tunggal '`´ ke garis bawah.
Sumber: Memperbaiki Nama File Unix / Linux / POSIX: Karakter Kontrol (seperti Newline), Leading Dashes, dan Masalah Lain
sumber
G:\spc>rena.exe -safe -portable *.txt
keluaran[FATAL-ERROR] Filename syntax error: aa:a.txt
rena '*.*' -portable
, dan jika Anda ingin itu menggunakan sesuatu sepertirena '***/*.*' -portable
di Linux. Dan saya percaya penggantian nama harus dilakukan di Linux, bukan pada Windows.Coba Recuva .
Ini adalah satu-satunya utilitas Windows yang saya temukan yang menangani nama file yang bukan Windows.
Aktifkan Pindai file yang tidak dihapus (untuk pemulihan dari disk yang rusak atau diformat ulang) dan pindai folder Anda. Saat mengembalikan, aktifkan Pulihkan struktur folder . Recuva akan secara efektif "menyalin" seluruh direktori ke lokasi lain sambil "santitisasi" nama file yang tidak ramah.
sumber
Tanpa berada di Linux dan tanpa menguji apa pun, saya percaya seseorang dapat menggunakan satu-liner seperti yang di bawah ini.
Untuk mengubah satu karakter:
Dan akhirnya untuk menghapus semua karakter non-alfanumerik:
sumber
<>:"/\|?*
Jika file Anda sudah pada volume NTFS, tampaknya menjalankan chkdisk dari Windows "menyelesaikan" masalahnya. Sayangnya, sepertinya ia melakukannya dengan menghapus file yang menyinggung.
sumber
Saya berhasil dengan kombinasi dari dua jawaban pertama, ditambah pyRenamer (GUI). Di Linux, saya menggunakan pyRenamer untuk menciutkan spasi dalam nama folder (direktori) - dengan mengganti ruang dengan apa-apa - sehingga program lain (Glindra mengubah nama) bekerja secara rekursif (seseorang dapat menempatkan garis bawah). Dari file, saya juga mengeluarkan beberapa karakter atau kata yang dapat diterima windows untuk menghemat ruang, dan juga ruang yang runtuh di nama file. Saya kemudian berlari rena untuk mengeluarkan karakter non-windows, disimpan ke flash drive, dan kemudian menggunakan Recuva untuk 'mengembalikan' ke folder di bawah Windows. Recuva menunjukkan jika path file terlalu panjang (dan itu juga menghilangkan karakter non-windows). Saya belum menemukan alat yang memeriksa jalur nama file untuk melihat apakah mereka berada di bawah batas maksimum Windows 255 (atau katakan 240 untuk memungkinkan beberapa kelonggaran).
sumber