Linux Bash命令提示行羅列講解
很多人都對(duì)過命令行提示的重要性不屑一顧,甚至是一點(diǎn)都不關(guān)心。但是我卻一點(diǎn)都不這么認(rèn)為,一個(gè)好的命令行提示可以改變你使用命令的方式。為此,我在internet上找到一些非常實(shí)用,優(yōu)秀,并有趣的bash的命令行提示。下面我將我最喜歡使用的一些命令行提示羅列如下。
注意 - 要使用下面這些提示,你可以拷貝粘貼這些以”PS1″打頭的內(nèi)容到你的終端上,為了使你的改變永久生效,還要將這些內(nèi)容粘貼到你使用用戶的~/.bashrc文件中去。
1. 在成功執(zhí)行的命令上增加一個(gè)笑臉符號(hào)
這個(gè)命令提示行可能是這個(gè)命令行提示列表中最有趣的一個(gè),但是它也依然有使用的價(jià)值。這個(gè)提示的想法是基于當(dāng)你命令被成功執(zhí)行,你將會(huì)得到一個(gè)笑臉作為你的命令行提示,一旦的命令執(zhí)行失敗,命令行提示將會(huì)換成一個(gè)哭臉。
例子:
代碼:
PS1=”\`if [ \$? = 0 ]; then echo \[\e[33m\]^_^\[\e[0m\]; else echo \[\e[31m\]O_O\[\e[0m\]; fi\`[\u@\h:\w]\\$ “
2.更改失敗命令的顏色
下面這個(gè)命令行提示是我最喜歡的命令行之一。和上一個(gè)相似,這個(gè)命令行提示的顏色會(huì)在你最后一個(gè)命令運(yùn)行失敗后改變,而且這個(gè)命令行長路徑會(huì)縮短輸入命令的空間,這個(gè)命令提示還包含了bash 每個(gè)歷史命令的命令號(hào),以方便重新提取運(yùn)行。
例子:
代碼:
PS1=”\[\033[0;33m\][\!]\`if [[ \$? = "0" ]]; then echo “\\[\\033[32m\\]“; else echo “\\[\\033[31m\\]“; fi\`[\u.\h: \`if [[ `pwd|wc -c|tr -d " "` > 18 ]]; then echo “\\W”; else echo “\\w”; fi\`]\$\[\033[0m\] “; echo -ne “\033]0;`hostname -s`:`pwd`\007″‘
3. 多行提示
如果你是喜歡命令行提示中包含完整信息的那一類人,那么下邊就有一個(gè)適合于你的命令行提示。這個(gè)命令行提示信息中包含日期/時(shí)間,全路徑,用戶,主機(jī),活動(dòng)終端,甚至包含文件數(shù)和占用空間等。
例子:
代碼:
PROMPT_COMMAND=’PS1=”\n\[\033[35m\]\$(/bin/date)\n\[\033[32m\]\w\n\[\033[1;31m\]\u@\h: \[\033[1;34m\]\$(/usr/bin/tty | /bin/sed -e ’s:/dev/::’): \[\033[1;36m\]\$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed ’s: ::g’) files \[\033[1;33m\]\$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed ’s/total //’)b\[\033[0m\] -> \[\033[0m\]“‘
4. 多顏色提示
這個(gè)命令行提示除了使用了不同顏色來區(qū)別不同信息外,它并沒有很特別的地方。就像你看到的那樣,它提供了時(shí)間,用戶名,主機(jī)名,當(dāng)前目錄。相當(dāng)少的信息,但是非常地實(shí)用。
例子:
代碼:
PS1=”\[\033[35m\]\t\[\033[m\]-\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$ “
#p#
5.顯示完整路徑
這是一個(gè)良好,簡潔,最小的2行提示(加上頂上的空行)。在第一行你能得到一個(gè)全路徑信息,在第二行是一個(gè)用戶名。如果你對(duì)每個(gè)命令提示行的空行不爽的話,你只要移走第一個(gè)\n就OK了
例子:
代碼:
PS1=”[\[\033[32m\]\w]\[\033[0m\]\n\[\033[1;36m\]\u\[\033[1;33m\]-> \[\033[0m\]“
6. 顯示后臺(tái)運(yùn)行任務(wù)數(shù)
這是另外的一個(gè)兩行提示,但是這個(gè)兩行提示具有更多的之前我們沒有的信息。第一行是顯示通常的user@host和全路徑等信息。在第二行我們可以得到命令執(zhí)行歷史序號(hào)和一個(gè)后臺(tái)運(yùn)行任務(wù)個(gè)數(shù)信息。
例子:
代碼:
PS1=’\[\e[1;32m\]\u@\H:\[\e[m\] \[\e[1;37m\]\w\[\e[m\]\n\[\e[1;33m\]hist:\! \[\e[0;33m\] \[\e[1;31m\]jobs:\j \$\[\e[m\] ‘
7. 顯示路徑信息
這是一個(gè)非常眩的設(shè)計(jì)。我們可以從這個(gè)命令行提示信息的第一行中獲取到用戶/主機(jī),運(yùn)行任務(wù)數(shù),和時(shí)間日期等信息。在第二行我們可以得到當(dāng)前目錄的文件數(shù)和他們占用的磁盤空間。
例子:
代碼:
PS1=”\n\[\e[30;1m\]\[\016\]l\[\017\](\[\e[34;1m\]\u@\h\[\e[30;1m\])-(\[\e[34;1m\]\j\[\e[30;1m\])-(\[\e[34;1m\]\@ \d\[\e[30;1m\])->\[\e[30;1m\]\n\[\016\]m\[\017\]-(\[\[\e[32;1m\]\w\[\e[30;1m\])-(\[\e[32;1m\]\$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed ’s: ::g’) files, \$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed ’s/total //’)b\[\e[30;1m\])–> \[\e[0m\]“
8. My Prompt
最后這個(gè)命令提示行是我個(gè)人最喜歡的使用的命令提示行。它是#7的一個(gè)修改,這個(gè)命令提示行只包含我最希望知道的信息,因此節(jié)省了它的占用空間。我偏愛兩行風(fēng)格,因?yàn)檫@樣不僅可以讓我看到全路徑信息,而且不影響我命令輸入的可視空間。
例子:
代碼:
PS1=”\n\[\e[32;1m\](\[\e[37;1m\]\u\[\e[32;1m\])-(\[\e[37;1m\]jobs:\j\[\e[32;1m\])-(\[\e[37;1m\]\w\[\e[32;1m\])\n(\[\[\e[37;1m\]! \!\[\e[32;1m\])-> \[\e[0m\]“
【編輯推薦】