Pembersih Nama File

Tempel daftar nama file dan dapatkan versi bersih yang tetap berfungsi di sistem operasi apa pun, arsip ZIP apa pun, dan jalur CDN apa pun. Pembersih ini mengonversi huruf beraksen menjadi ASCII murni, menghapus karakter yang bermasalah di Windows (\ / : * ? " < > |), menghilangkan karakter kontrol, menggabungkan spasi, serta mengganti urutan terlarang dengan karakter pilihan Anda (bawaan: tanda hubung). Berguna sebelum mengunggah massal ke S3, mengirim ZIP materi kursus, atau merapikan hasil impor foto dari NAS lama.

Cara membersihkan nama file

  1. 1

    Tempel nama file

    Satu entri per baris, dengan atau tanpa ekstensi. Ekstensi dipertahankan sebagaimana adanya.

  2. 2

    Pilih pengganti

    Pilih karakter yang digunakan untuk menggantikan urutan yang tidak aman. Tanda hubung (`-`) merupakan pilihan bawaan yang paling aman; sedangkan tanda garis bawah (`_`) merupakan pilihan yang lebih klasik atau tradisional.

  3. 3

    Jalankan pembersih

    Setiap nama dipangkas, diubah ke ASCII, dibersihkan dari karakter terlarang, dan spasi digabungkan. Jika tidak ada yang tersisa, namanya menjadi `file`.

  4. 4

    Ulas terlebih dahulu sebelum mengganti nama

    Hasil hanya mencantumkan nama yang sudah bersih, jadi periksa kembali untuk mendeteksi kolisi (dua input menghasilkan output yang sama) sebelum mengganti nama di tempat.

Apa yang tidak aman, dan mengapa?

Berbagai sistem file dan alat memiliki daftar hitam yang berbeda. Titik temu yang aman antar platform justru lebih ketat daripada yang banyak orang sadari.

Karakter dan pola yang membuat nama file tidak aman

Item Alasan tidak aman
\ / : * ? " < > | Dilarang digunakan di Windows (NTFS, FAT).
Karakter kontrol ASCII 0x00-0x1F Tidak sah pada sebagian besar sistem file; akan menghentikan eksekusi skrip shell.
Spasi di awal/akhir Dihapus secara diam-diam oleh Windows; menyebabkan bug yang tidak terlihat.
Titik di akhir Dihapus secara diam-diam oleh Windows.
Nama cadangan CON, PRN, AUX, NUL, COM1..9, LPT1..9, semuanya diblokir di Windows.
Tanda gabungan Unicode Menyebabkan café tampak sama dengan café, tetapi menjadi nama berkas yang berbeda pada sebagian sistem.
Glif emoji dan piktograf Tetap berfungsi di sistem modern, tetapi merusak pipeline CI dan jalur CDN yang lama.

Langkah normalisasi yang diterapkan

  1. Konversi ke ASCII. Huruf beraksen berubah menjadi huruf dasarnya: café menjadi cafe, naïve menjadi naive. Aksara tanpa padanan ASCII (CJK, emoji) akan dihilangkan.
  2. Penggantian karakter terlarang. \ / : * ? " < > | dan karakter kontrol berubah menjadi karakter pengganti pilihan Anda (bawaan: tanda hubung).
  3. Penggabungan spasi. Deretan spasi dan tab menjadi satu karakter pengganti.
  4. Pemangkasan tepi. Titik dan karakter pengganti di awal serta akhir dihapus; hasil kosong menjadi file.
  5. Ekstensi dipertahankan. Titik di dalam nama tidak diganti, jadi .pdf, .jpg, .tar.gz tetap bertahan; hanya titik di akhir yang dihapus.

Tips

  • Pertahankan ekstensi. Titik di dalam nama dipertahankan, jadi .pdf, .jpg, dan .tar.gz tetap sebagaimana adanya.
  • Periksa tabrakan nama. Résumé.pdf dan Resume.pdf sama-sama menjadi resume.pdf, karena aksen selalu dikonversi. Periksa hasilnya sebelum mengganti nama di tempat.
  • Jalur web. Untuk URL, lakukan juga pengodean persen setelah dibersihkan, atau lebih baik lagi, jaga slug URL tetap dalam himpunan bagian [a-z0-9-] agar pengodean tidak pernah diperlukan.

Pertanyaan yang Sering Diajukan

Untuk aset web dan ZIP lintas platform, iya, ini mencegah bug halus saat file diunggah ke server Windows yang tidak membedakan huruf besar/kecil, lalu ditautkan dari CDN Linux yang membedakannya. Pembersih tidak pernah mengubah besar/kecil huruf, jadi ubah sendiri namanya menjadi huruf kecil jika perlu. Untuk pekerjaan lokal, itu soal selera.

Spasi diperbolehkan di setiap sistem operasi modern, tetapi memaksa pengodean URL (%20), merusak banyak pipeline shell, dan membingungkan alat-alat lama. Menggantinya dengan tanda hubung menghilangkan satu kategori bug secara keseluruhan.

Pembersih selalu menghasilkan ASCII murni. Huruf beraksen dikonversi (café menjadi cafe), Sirilik ditransliterasi ke perkiraan Latin, dan karakter tanpa padanan ASCII (CJK, Thai, emoji) dihilangkan. Jika sistem tujuan membutuhkan nama non-Latin asli, simpanlah dalam file terpisah.

Tidak, daftar tersebut dibersihkan di memori selama proses permintaan dan tidak disimpan maupun ditulis ke dalam log apa pun setelahnya.

Alat Terkait

Alat ini tersedia dalam bahasa lain