Saya menggunakan Ubuntu 10 dan saya segera mengetahui bahwa case case sensitif ketika tidak nyaman untuk itu (seperti ketika autocomplete path file dengan tab di terminal) tetapi juga case peka ketika menggunakan perintah MV dan CP (juga merepotkan ketika mencoba menduplikasi nama file dengan kasus yang berbeda).
Intinya, saya perlu perintah ini berfungsi tetapi tidak.
cp ./filename.txt ./FileName.txt
Saya hanya berakhir dengan filename.txt
:
Bagaimana saya bisa mendapatkan file yang sama dengan case berbeda tetapi nama yang sama di direktori yang sama?
EDIT: Komentar Maerics di bawah ini membantu saya mengingat bahwa saya sebenarnya mengembangkan pada drive bersama Windows yang menjalankan NTFS yang tidak sensitif huruf. Inilah sebabnya meskipun CP dan MV tidak menghasilkan kesalahan, file tidak disalin (atau lebih mungkin IS disalin, tetapi Windows menggantikan yang sudah ada).
Jawaban:
NTFS 1 dan VFAT tidak peka terhadap huruf besar-kecil, mereka hanya mempertahankan kasus. Itu berarti jika Anda membuat file bernama
FileName.txt
, sistem file akan mempertahankan nama kasus campuran, tetapi Anda dapat mengakses file dengan kombinasi kasus apa pun dari huruf yang sama, sepertiFILENAME.TXT
,filename.txt
ataufileNAME.txt
. Ini menjelaskan Anda tidak dapat memiliki dua file dengan ejaan yang sama dengan hanya variasi huruf besar / kecil di direktori yang sama.Sistem file yang diekspor SMB harus menerapkan perilaku ini untuk tidak membingungkan klien Windows.
ZFS dapat dikonfigurasi untuk berperilaku seperti itu dengan
casesensitivity=mixed
properti.1 Secara teknis, NTFS peka huruf besar-kecil tetapi OS yang memasang sistem file jenis ini hampir selalu dikonfigurasikan untuk menyembunyikan fitur mendasar ini dan hanya mempertahankan kasing. Namun Windows dapat mengaktifkan sensitivitas case dengan memodifikasi kunci register ini
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\dword:ObCaseInsensitive
dan Linux dapat me-mount sistem file ini dengan berbagai perilaku tergantung pada opsiignore_case
danwindows_names
mount.sumber
Anda dapat mengaktifkan penyelesaian nama file case-insensitive di bash dengan menambahkan baris berikut ke
$HOME/.inputrc
:Mengenai nama file: Ini tergantung pada sistem file. Pada sistem file Linux, seharusnya tidak ada masalah. Pada sistem file lain, perilaku dapat dikontrol dengan opsi ke perintah mount. Lihat halaman manual
mount(8)
untuk informasi lebih lanjut tentang opsi yang tersedia untuk dipasang.sumber
Apakah ini properti sistem file atau yang lainnya?
Ini bekerja dengan baik untuk saya.
sumber
Ubuntu tidak sebagian case-sensitive. Itu selalu case sensitif.
filename.txt
danFilename.txt
dua file berbeda dan dapat ditempatkan di direktori yang sama. Jadi perintah ini:akan bekerja tanpa masalah di direktori yang sama.
sumber
filename.txt
sendiri di direktori Anda saat ini?