首页 > 代码库 > 实用且有趣Bash命令提示行

实用且有趣Bash命令提示行

实用且有趣Bash命令提示行

 

       关于颜色之类的,就自由发挥了。


1. 在成功执行的命令上增加一个笑脸符号:

 

         命令执行成功,你将会得到一个笑脸作为你的命令行提示,一旦的命令执行失败,命令行提示将会换成一个哭脸。且闪烁和高亮

 

PS1="\`if [ \$? = 0 ]; then echo   \[\e[40\;33\;5\;1m\]^_^\[\e[0m\]; else echo \[\e[40\;31\;5\;1m\]@_@\[\e[0m\];   fi\`[\u@\h:\w]\\$"

echo ‘export PS1="\`if [ \$? = 0 ]; then echo   \[\e[40\;33\;5\;1m\]^_^\[\e[0m\]; else echo \[\e[40\;31\;5\;1m\]@_@\[\e[0m\];   fi\`[\u@\h:\w]\\$"‘ >> /etc/bashrc

. /etc/bashrc

 

 

 

2.更改失败命令的颜色

 

         个人比较喜欢这个。

 

         上一个相似,这个命令行提示的颜色会在你最后一个命令运行失败后改变,而且这个命令行长路径会缩短输入命令的空间,这个命令提示还包含了bash 每个历史命令的命令号,以方便重新提取运行。

 

PS1="\[\033[40;33;1m\][\!]\`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"

echo ‘export PS1="\[\033[40;33;1m\][\!]\`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"‘ >> /etc/bashrc

. /etc/bashrc

 

 

3. 多行提示:

 

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\]"

echo   ‘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\]"‘ >> /etc/bashrc

. /etc/bashrc

 

 

 

 

4. 多颜色提示:

 

 

PS1="\[\033[40;33;1m\]\t\[\033[m\]-\[\033[40;36;1m\]\u\[\033[m\]@\[\033[40;32;1m\]\h:\[\033[33;1m\]\w\[\033[m\]\$   "

echo ‘   PS1="\[\033[40;33;1m\]\t\[\033[m\]-\[\033[40;36;1m\]\u\[\033[m\]@\[\033[40;32;1m\]\h:\[\033[33;1m\]\w\[\033[m\]\$   "‘ >> /etc/bashrc

. /etc/bashrc

 

 

 

5.显示完整路径:

 

         最小的2行提示(加上顶上的空行)。在第一行你能得到一个全路径信息,在第二行是一个用户名。如果你对每个命令提示行的空行不爽的话,你只要移走第一个\nOK

 

PS1="[\[\033[40;32;1m\]\w]\[\033[0m\]\n\[\033[1;36m\]\u\[\033[1;33m\]->   \[\033[0m\]"

echo ‘PS1="[\[\033[40;32;1m\]\w]\[\033[0m\]\n\[\033[1;36m\]\u\[\033[1;33m\]->   \[\033[0m\]"‘ >> /etc/bashrc

. /etc/bashrc


 

 

6. 显示后台运行任务数:

 

PS1="\[\033[40;32;1m\]\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\]   "

echo ‘ PS1="\[\033[40;32;1m\]\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\] "‘ >> /etc/bashrc

. /etc/bashrc

 

 

7. 显示路径信息:

 

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.

 

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\]"

 

 

 

 

9.

 

PS1="\[\e[1;34m\]\u\[\e[m\]\[\e[1;31m\]@\[\e[m\]\[\e[1;33m\]\h\[\e[m\]\[\e[1;34m\]:\[\e[m\]\[\e[1;32m\]\w\[\e[m\]\[\e[1;32m\]\n(\[\e[37;1m\]!   \!\[\e[32;1m\])\[\e[m\]\[\e[1;35m\]$\[\e[m\] "

 

      参考:http://coolshell.cn/articles/1399.html。

     如果你愿意共享你的命令提示行,请在将这些命令提示代码加在下面的评论中,分享源自于心胸的宽广。