很多時(shí)候莫名其妙新用戶刪除了自己家目錄下的.bashr或者.bash_profile等系統(tǒng)文件,造成命令窗口提示符缺失了,變成了光禿禿的,看起來既不美觀也不方面。
其實(shí)是缺少了
username@hostname:~$ 這樣的部分,通常是因?yàn)?PS1(Primary Prompt String 1)環(huán)境變量被意外設(shè)置成了空值或損壞了。
這個(gè)問題很容易解決。請按照以下步驟操作:
永久修改方式
問題的根源是某個(gè) Shell 啟動(dòng)配置文件(如 ~/.bashrc)中的 PS1 變量被錯(cuò)誤地修改或覆蓋了。我們需要修復(fù)這個(gè)文件。
1. 編輯配置文件
即使沒有提示符,你仍然可以輸入命令。首先,讓我們用 nano 編輯器打開用戶配置文件(以 bash shell 為例):
bash
nano ~/.bashrc
(如果系統(tǒng)默認(rèn)是 zsh,則文件是 ~/.zshrc)
2. 檢查并修復(fù) PS1 設(shè)置
使用方向鍵向下滾動(dòng),查找任何與
PS1 相關(guān)的行。
最常見的錯(cuò)誤是某一行包含了類似
PS1=或 export PS1= 但后面是空字符串 "" 或者內(nèi)容錯(cuò)誤。
找到可疑行后,可以直接將其刪除,或者在行首添加 # 符號(hào)將其注釋掉。
3. 添加標(biāo)準(zhǔn)提示符(如果找不到問題行)
如果沒找到明顯錯(cuò)誤,或者文件末尾缺少定義,可以直接在文件的最后添加一行:
bash
export PS1="[\u@\h \W]\\$ "
或者,使用帶顏色的版本:
bash
export PS1="\[\e[32m\]\u@\h\[\e[0m\]:\[\e[34m\]\w\[\e[0m\]\\$ "
4. 保存并退出文件
在 nano 編輯器中:
按 Ctrl + O 來寫入(保存)文件,按回車確認(rèn)文件名。
按Ctrl + X 退出編輯器。
5. 使配置立即生效
輸入以下命令,讓剛剛修改的 ~/.bashrc 文件在當(dāng)前終端中重新加載:
bash
source ~/.bashrc
現(xiàn)在,你的提示符應(yīng)該已經(jīng)永久恢復(fù)了。新打開的所有終端窗口都會(huì)使用修復(fù)后的配置。
終極排查方法
如果以上方法都沒用,可能是其他配置文件(如 ~/.bash_profile 或 ~/.profile)覆蓋了 PS1。
逐一檢查其他配置文件
同樣用 nano 打開這些文件,檢查是否有設(shè)置 PS1 的行:
bash
nano ~/.bash_profile
nano ~/.profile
如果發(fā)現(xiàn)有問題,同樣注釋或刪除錯(cuò)誤的行。
使用默認(rèn)配置核武器
如果問題很復(fù)雜,想快速恢復(fù),可以備份現(xiàn)有配置后重新生成一個(gè)默認(rèn)的 .bashrc 文件。
重命名當(dāng)前的配置文件(相當(dāng)于備份):
bash
mv ~/.bashrc ~/.bashrc_backup
復(fù)制一個(gè)全局的默認(rèn)配置模板到你的家目錄:
bash
cp /etc/skel/.bashrc ~/
重新加載配置:
bash
source ~/.bashrc
這肯定會(huì)恢復(fù)一個(gè)全新的默認(rèn)提示符。