Apakah mungkin untuk mendefinisikan ulang direktori home? mis. ke /ext1/username
bukannya /home/username
, yaitu memperluas ~
ke direktori lain (berlawanan dengan mengubah direktori home sebenarnya di mana file home pengguna berada).
(Pertanyaan ini sebagian besar bersifat akademis, karena sepertinya praktik yang buruk untuk melakukannya. Saya juga tidak punya pilihan dalam hal menggunakan csh
, meskipun telah membaca Top 10.)
Jawaban yang Diterima:
Tilde ~
ditafsirkan oleh shell Anda. Shell Anda akan menafsirkan ~
sebagai bentuk singkat dari $HOME
.
Coba (echo ~; HOME=foo; echo ~)
. Ini pertama-tama harus mencetak direktori home Anda yang sebenarnya dan setelah itu "foo", saat Anda mengatur $HOME
untuk itu.
Nilai default $HOME
berasal dari konfigurasi sistem Anda. Gunakan getent passwd
untuk membuat daftar semua pengguna yang dikenal dan direktori home mereka. Bergantung pada konfigurasi sistem Anda, entri tersebut mungkin berasal dari /etc/passwd
atau layanan direktori jarak jauh apa pun.
Jika Anda hanya ingin mendefinisikan ulang direktori home Anda untuk sementara, cukup setel $HOME
another yang lain .
Jika Anda ingin mengubahnya secara permanen, Anda harus mengubah entri passwd, mis. dengan mengedit /etc/passwd
secara manual .