Jika saya membuat tautan simbolik di terminal dengan perintah seperti
ln -s /path/to/some/directory symbolicLink
lalu ikuti tautannya dengan
cd symbolicLink
terminal kelihatannya berpikir bahwa cwd ~/symbolicLink/
adalah benar-benar menunjukkan meskipun ~/path/to/some/directory/
(dengan asumsi bahwa link dibuat ~
, tentu saja). Apakah ini berarti bahwa jika saya kemudian ketik cd ..
saya dibawa kembali ke ~
, karena terminal 'berpikir' ini adalah induk dari cwd.
Apa yang akan saya perlu mengubah sehingga cd ..
malah akan membawa saya ke ~/path/to/some/
, yaitu nyata induk ~/path/to/some/directory/
?
cd -P
masih memecahkan masalah yang saya hadapi, tetapi masih berguna untuk diketahui.Cara alternatif adalah menjalankan:
sumber
Saya merasakan sakit Anda — saya menganggap
bash
pada dasarnya rusak untuk penggunaan interaktif karena perilaku ini.tcsh
adalah shell yang jauh lebih ramah pengguna untuk penggunaan interaktif. Biarkanbash
untuk pemrograman (jika Anda bersikeras menulis skrip shell ketika ada banyak alternatif yang lebih baik di antara banyak bahasa scripting).Untuk mengganti cangkang untuk setiap pengguna, ketik
chsh
di baris perintah dan ikuti petunjuknya (sekali lagi, saya sarankan/bin/tcsh
dan buku O'Reilly yang bagus Menggunakan csh dan tcsh , tersedia untuk apa pun yang tidak digunakan).sumber
cd
perilaku default untuk symlink. Saya harus ingat untuk memasukkan keset -o physical
dalam.bashrc
atau.bash_profile
untuk setiap mesin yang saya gunakan.