Misalnya, di My Documents
, ada folder berikut:
.ssh
.subversion
Apakah ini semacam konvensi penamaan yang tidak saya sadari?
Konvensi penamaan ini berasal dari sistem operasi mirip Unix (seperti Linux atau OS X), yang artinya file atau direktori "tersembunyi". Ini berfungsi di mana saja, tetapi penggunaan utamanya adalah untuk menyembunyikan file konfigurasi di direktori home Anda (mis. ~/.cache/
Atau ~/.plan
- mereka sering disebut "dotfiles").
Dotfiles, dengan cara tertentu, bisa disebut Unix tradisional yang setara dengan direktori "AppData" di Windows. (Banyak program Linux sedang diubah untuk mengikuti spesifikasi direktori dasar XDG , memindahkan konfigurasinya ke ~/.config/
& data lainnya ke ~/.cache/
& ~/.local/share/
- ini membuatnya sedikit lebih mirip dengan AppData\Roaming
dan AppData\Local
.)
Anda memiliki ini .ssh
dan .subversion
direktori pada Windows karena Anda telah menggunakan beberapa program - khususnya, OpenSSH dan Subversion - yang telah porting untuk menggunakan API sistem Windows daripada yang POSIX, tetapi belum disesuaikan untuk beberapa konvensi Windows lainnya.
Terkadang adaptasi ini dilewati dengan sengaja, untuk membuat hidup lebih mudah bagi orang-orang yang menggunakan lingkungan seperti Unix seperti Cygwin pada sistem Windows mereka. Sebagai contoh, Cygwin menginstal seperangkat alat seperti Unix standar ls
, yang mengabaikan bendera "tersembunyi" Windows dan hanya menghormati .dotfile
namanya. Selain itu, menggunakan lokasi yang sama (mis. <home>/.ssh
) Dapat mempermudah sinkronisasi sinkronisasi antara komputer Windows dan Linux / BSD / OSX seseorang.
Juga: Biasanya file-file ini ada di direktori home pengguna , mis. Di Linux, atau di Windows 7+. Sangat jarang bagi mereka untuk ditempatkan di subdirektori "Dokumen" atau "Dokumen Saya"./home/name/.ssh
C:\Users\name\.ssh
Seperti yang ditulis Rob Pike di Google+ , ini adalah fitur yang tidak disengaja:
Dahulu, ketika desain sistem file Unix sedang dikerjakan, entri
.
dan..
muncul, untuk membuat navigasi lebih mudah. Saya tidak yakin tetapi saya percaya..
masuk selama Versi 2 menulis ulang, ketika sistem file menjadi hirarkis (memiliki struktur yang sangat berbeda sejak awal). Ketika seseorang mengetik ls, bagaimanapun, file-file ini muncul, jadi Ken atau Dennis menambahkan tes sederhana ke program. Itu di assembler saat itu, tetapi kode tersebut setara dengan sesuatu seperti ini:
if (name[0] == '.') continue;
Pernyataan ini sedikit lebih pendek dari yang seharusnya, yaitu
if (strcmp(name, ".") == 0 || strcmp(name, "..") == 0) continue;
tapi hei, itu mudah.
Dua hal dihasilkan.
Pertama, preseden buruk ditetapkan. Banyak pemrogram malas lainnya memperkenalkan bug dengan membuat penyederhanaan yang sama. File aktual dimulai dengan titik sering dilewati ketika mereka harus dihitung.
Kedua, dan jauh lebih buruk, ide file "tersembunyi" atau "titik" dibuat. Sebagai akibatnya, lebih banyak pemrogram yang malas mulai memasukkan file ke direktori home semua orang. Saya tidak memiliki banyak hal yang diinstal pada mesin yang saya gunakan untuk mengetik ini, tetapi direktori rumah saya memiliki sekitar seratus file dot dan saya bahkan tidak tahu apa sebagian besar dari mereka atau apakah masih diperlukan . Setiap evaluasi nama file yang melewati direktori home saya diperlambat oleh lumpur yang terakumulasi ini.
ls
memiliki-a
opsi untuk mendaftar semua file.LOGIN.COM
atauDECW$MAIL.DAT
di direktori home Anda . (Saya tidak yakin sistem mana yang populer saat itu.) Unix baru saja dibuat; tidak memiliki konvensi sama sekali...
untuk "up dir"; Microsoft sebenarnya mengiklankan "fitur Unix canggih" ini.