Linux
在沒有管理員權限的情況下將 shell 從 bash 永久更改為 ksh
我需要將我的 PuTTY shell 從更改
bash
為ksh
永久。由於我沒有管理員權限,因此我無法使用chsh
命令和編輯。/etc/passwd
請幫助我了解
.profile
文件中需要更改的內容,或者我是否需要在.bashrc
/.kshrc
文件中進行更改,以便我可以ksh
繼續使用。
(根據評論…)您的管理員已告訴您添加
exec ksh
到您的~/.profile
文件中,但這似乎對您不起作用。它不起作用,因為如果前者存在,您的bash
登錄 shell 將~/.bash_profile
代替前者。~/.profile
因此,請改為添加
exec ksh
到您的~/.bash_profile
文件中。就個人而言,我會使用類似以下的內容(假設
ksh
已知 shell 執行檔位於/bin/ksh
):if [ -x /bin/ksh ]; then export SHELL=/bin/ksh exec "$SHELL" -l fi
這將是我的整個文件,如果存在並且可以執行
~/.bash_profile
,它將/bin/ksh
作為登錄 shell啟動。/bin/ksh
然後ksh
外殼程序將繼續替換bash
外殼程序並讀取您的~/.profile
文件等(如果您已將其添加到此處,請將其刪除)。 您的文件將不再被使用。exec ksh``~/.profile``~/.bashrc
bash
如果由於某種原因ksh
從您的系統中刪除了外殼,上面的程式碼將為您留下一個外殼。