设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 服务器 > 系统 > 正文

Linux 的几个有用及有趣的 Bash 提示

发布时间:2021-11-22 16:31 所属栏目:52 来源:互联网
导读:这里我们提供了一些 Bash 提示,并不是所有的都是严肃的。例如,我们在列表中的第一个条目可以为您在使用命令行时带来一点乐趣! 1、执行命令之后显示字符表情 这个提示很有趣但很有用!这个想法是,只要你执行成功的命令,你的提示就会显示一个快乐的字符表
这里我们提供了一些 Bash 提示,并不是所有的都是严肃的。例如,我们在列表中的第一个条目可以为您在使用命令行时带来一点乐趣!
 
1、执行命令之后显示“字符表情”
这个提示很有趣但很有用!这个想法是,只要你执行成功的命令,你的提示就会显示一个快乐的字符表情。
 
相反,当命令失败时,你会看到一个悲伤的字符表情。
 
要应用它,请使用以下代码:
 
PS1="\`if [ \$? = 0 ]; then echo \[\e[33m\]^_^\[\e[0m\]; else echo \[\e[31m\]O_O\[\e[0m\]; fi\`[\u@\h:\w]\\$"
 
 
 
这可能看起来令人困惑,但我们使用 if 语句来确定命令是好是坏。从那里,我们在颜文字周围使用一些转义,以确保它们以正确的方式显示。
 
2、当终端发出错误命令时更改 Bash 提示的颜色
可以说,这个提示是列表中最有用的。像上面一样,如果您的最后一个命令未能运行,提示会更改颜色,但也会缩短长路径并包含每个命令的 Bash 历史记录编号以便于检索。
 
PROMPT_COMMAND='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"'
 
 
 
同样,这看起来很难实现,但它很简单。我们再次使用 if 语句以及颜色代码来突出显示各种消息。
 
您可以将这些颜色设为您喜欢的任何颜色,但我们会运用一些逻辑思维,更改后的颜色应该对您有所帮助,而不是仅仅为了进行更改而更改。
 
3、将Bash提示扩展到多行
有时,你可能希望在 Bash 提示中包含大量信息。这个 Bash 提示可能会让你感兴趣。它显示日期、时间、完整目录路径、用户名和主机名、活动终端,甚至文件计数和空间使用情况。
 
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\]"
 
 
 
在这里,我们不需要 if 语句,因为提示本身将具有静态布局和动态内容。您可能还会发现很难解析这个元素中的不同元素。我们的建议是应用它,然后逐条运行提示。通过一些交叉引用,您将开始了解提示是如何组合的。
 
4、使用颜色使您的 Bash 提示更具可读性
除了很好地使用颜色来分隔不同的信息之外,这个提示没有什么特别之处。如您所见,它提供了时间、用户名和主机名以及当前目录。
 
PS1="\[\033[35m\]\t</\[\033[m\]-\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$"
 
 
 
这是最有用的 Bash 提示之一,也是您自定义提示时首先要查看的区域。它可以为您学习自定义提示的工作原理提供良好的基础。
 
5、显示完整目录路径
就像使用颜色一样,这个提示是一个干净且最少的两行提示(尽管顶部有一个空行)。
 
我们在第一行显示完整的工作目录路径,然后在底部显示用户。
 
PS1="[\[\033[32m\]\w]\[\033[0m\]\n\[\033[1;36m\]\u\[\033[1;33m\]-> \[\033[0m\]" 

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读