Saya hanya memperhatikan bahwa tidak mungkin untuk menamai folder ._.
- namanya diberi nama ._
. Kadang-kadang, itu menghilang tepat setelah penamaan itu tetapi muncul kembali setelah menyegarkan tampilan. Windows tampaknya memiliki masalah dengan titik-titik di akhir nama file - mengapa ini?
74
.
di Windows.cd -- -_-
mungkin dapat berfungsi. Ini--
adalah penanda "akhir opsi" yang umum.--
dengan caranya sendiri " ini adalah akhir dari opsi, perlakukan apa pun yang dimulai dengan-
nilai literal ". Baru diuji:mkdir -- -_-
dancd -- -_-
berfungsi seperti yang saya harapkan../-_-
harus bekerja juga.cd "-_-"
shell menggunakan tanda kutip untuk pengelompokan tetapi tidak memperlakukannya sebagai bagian dari argumen; kesalahan denganinvalid option
Jawaban:
Windows biasanya membutuhkan file yang tidak memiliki ekstensi atau ekstensi yang panjangnya setidaknya satu karakter; itu tidak keren dengan ekstensi panjang nol, yaitu nama file yang diakhiri dengan
.
. Folder juga dapat memiliki ekstensi, oleh karena itu, Windows tidak membiarkan nama mereka diakhiri dengan a.
. Sumber, dari artikel yang ditautkan oleh DavidPostill :(Tekankan tambang.) Jika Anda mencoba untuk mengakhiri file atau direktori bernama dengan titik, Windows hanya menganggap Anda tidak menginginkan ekstensi dan menghapusnya, bahkan jika Anda membuatnya dengan
md
di command prompt.Zona bahaya! Jika Anda benar-benar ingin nama folder diakhiri
.
, Anda harus menggunakan urutan sulih nama sulap mentah\\?\
. Di prompt perintah,md \\?\C:\path\to\container\._.
memang akan membuat folder bernama._.
, tetapi banyak program akan memiliki masalah dengan itu, bahkan Explorer:Direktori semacam itu hanya dapat dihapus dengan
rd
diikuti\\?\
namanya atau diganti namanya dengan namanya yang pendek (8,3,dir /x
).sumber
dir /x
membuatnya sangat mudah, dan ada kalanya nama ini berguna.Windows tampaknya memiliki masalah dengan titik-titik di akhir nama file? Kenapa ini?
Tautan sumber di bawah ini menjelaskan lebih detail tentang aturan penamaan.
Sumber Memberi Nama File, Jalur, dan Ruang Nama
sumber
Itu bukan bug. Ini dirancang untuk mencegah masalah kompatibilitas.
Ini adalah sisa dari masa DOS lama.
FAT12 (floppy) dan FAT16 filesystems (FAT16 sebelum dukungan nama file lama diperkenalkan di Windows 95) hanya memiliki nama file yang disimpan dalam 11 byte:
8 byte untuk nama, 3 untuk ekstensi. "Periode" antara nama dan ekstensi bahkan tidak disimpan. Itu tersirat dan secara otomatis ditambahkan untuk keperluan tampilan.
Direktori tidak memiliki ekstensi sama sekali. Sebaliknya 3 byte untuk ekstensi diisi dengan karakter "$" (yang ilegal dengan nama asli).
Karena Windows masih kompatibel dengan Explorer ini dan banyak komponen Windows lainnya diam-diam membuat periode trailing menghilang untuk mencegah masalah kompatibilitas.
Seperti yang telah dinyatakan oleh orang lain, Anda benar-benar dapat menangani folder tersebut dengan menggunakan semantik RAW (awalan \\? \ Sebelum nama path absolut).
Di belakang layar, NTFS dan sistem file jaringan tidak memiliki masalah dengan file dan folder tersebut. Ini hanya kasus Explorer yang berusaha mencegah pengguna membuat sesuatu yang dapat menyebabkan masalah bagi perangkat lunak lain.
(Bahkan ada beberapa kekurangan lainnya juga:
Nama file seperti COM, COM1, COM2, AUX, PRN, LPT, LPT1, LPT2, LPT3, CON dapat menyebabkan masalah serupa di mana Explorer dan banyak bagian Windows lainnya menjadi bingung karena nama-nama ini adalah "nama cadangan" yang juga berasal dari era DOS.)
sumber
mkdir testfile.name
) dan tampilkan nama DOS-nya di Windows (dir /x
) - Anda akan mendapatkanTESTFI~1.NAM
, seperti yang diharapkan.Masalahnya di sini adalah bahwa Windows (DOS) diperbolehkan untuk nama file 8,3 pada sistem file FAT. Artinya, 8 karakter, diikuti oleh a. diikuti oleh tiga karakter. Unix dan Linux mengizinkan karakter apa pun, kecuali / dan \ 0. \ 0 adalah terminator string karakter C, dan / adalah pemisah direktori. Segala sesuatu yang lain dapat digunakan.
Windows 95 mengatasi masalah ini dengan memelihara basis data pendek (8,3) nama file untuk Long File Names (LFN) meta-data. Jika Anda menghapus file OS Windows 95 Anda, Anda akan dibiarkan memiliki file dengan nama aneh pada disk pada instalasi Windows 95 Anda berikutnya. Sebagai contoh, "My Documents" dapat dinamai MYDOCU ~ 1 pada disk. Jelas, jika Anda kehilangan meta-data, Anda tidak akan dapat dengan mudah mengubahnya.
Shell harus mengatasi banyak peningkatan historis yang berkeliaran sejak zaman MS-DOS.
Semoga ini membantu
sumber