美文网首页
Linux Bash 提示符的一些骚操作

Linux Bash 提示符的一些骚操作

作者: Linux大师 | 来源:发表于2023-09-26 10:05 被阅读0次

当你在 Linux 环境下打开一个 Shell 终端时,会看到命令行中出现了类似下面的一个 Bash 提示符:[user@$host ~]$你知道命令行提示符其实是可以自己设置添加许多非常有用的信息的吗?在这篇文章中我就会教你如何自定义自己的 Bash 命令行提示符,想看的话就接着看吧~

如何设置 Bash 提示符

Bash 提示符是通过环境变量 PS1 (提示符字符串 1Prompt String 1) 来设置的,它用于交互式 shell 提示符。当然如果你需要更多的输入才能完成一个 Bash 命令时,PS2 环境变量就是用来设置多行提示符的:

[dneary@dhcp-41-137 ~]$ export PS1="[Linux Rulez]$ "

[Linux Rulez] export PS2="... "

[Linux Rulez] if true; then

... echo "Success!"

... fi

Success!

在哪里设置 PS1 的值?

PS1 就是一个普通的环境变量,系统默认值设置在 /etc/bashrc 中,在我的系统中,默认提示符通过以下命令来设置的:

[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "

它判断 PS1 是否是系统的默认值 \s-\v$ ,如果是的话则将值设置为 [\u@\h \W]\$。(LCTT 译注:注意命令中用 \ 做了转义。)

但如果你想要自定义提示符,不应该修改 /etc/bashrc ,而是应该在你的主目录下将自定义命令加到 .bashrc 文件中。

上面提到的 \u、\h、\W、\s 和 \v 是什么意思?

在 man bash 中的 PROMPTING 章节中,你能够找到所有 PS1 和 PS2 相关的特殊字符的描述,以下是一些比较常用的:

\u:用户名

\h:短主机名

\W:当前你所在的目录的名称(basename),~ 表示你的主目录

\s:Shell 名字(bash 或者 sh,取决于你的 Shell 的名字是什么)

\v:Shell 的版本号

还有哪些特殊的字符串可以用在提示符当中

除了上面这些,还有很多有用的字符串可以用在提示符当中:

\d:将日期扩展成 “Tue Jun 27” 这种格式

\D{fmt}:允许自定义日期格式——可通过 man strftime 来获得更多信息

\D{%c}:获得本地化的日期和时间

\n:换行(参考下面的多行提示符)

\w:显示当前工作目录的完整路径

\H:当前工作机器的完整主机名

除了以上这些,你还可以在 Bash 的 man 页面的 PROMPTING 部分找到更多的特殊字符和它的用处。

多行提示符

如果你的提示符过长(比如说你想包括 \H 、\w 或完整的日期时间时 ),想将提示符切成两行,可以使用 \n 将提示符切断成两行显示,比如下面的多行的例子会在第一行显示日期、时间和当前工作目录,第二行显示用户名和主机名:

PS1="\D{%c} \w\n[\u@\H]$ "

还能再好玩点吗?

人们偶尔也想将提示符变成彩色的。虽然我觉得彩色提示符让人分心、易怒,但是也许你很喜欢。如果我们想将日期变成红色的,目录变成青蓝色,用户名搞一个黄色背景,你可以这样做:

PS1="\[\e[31m\]\D{%c}\[\e[0m\]

\[\e[36m\]\w\[\e[0m\]\n[\[\e[1;43m\]\u\[\e[0m\]@\H]$ "

\[..\] :表示一些非打印字符

\e[.. :转义字符,后面的跟着的特定的转义字符串在终端中表示颜色或者其他意思

31m :表示红色字体(41m 表示是红色背景)

36m :表示是青蓝色字体 1;

43m :表示黄色字体(1;33m 表示黄色字体)

[\e[0m]] :它在最后将颜色恢复成系统终端默认颜色

你可以在 Bash prompt HOWTO 这里找到更多的颜色代码,甚至可以让字符反相和闪烁!我不知道为什么地球人会有这种想法,但是你可以这么干!

所以你最喜欢的自定义提示符是什么样子的呢?有没有让你抓狂的自定义提示符呢?请在评论里告诉我吧~

文章来源:https://www.linuxprobe.com/linux-bash-prompt.html

相关文章

  • Linux Bash 提示符的一些骚操作

    当你在 Linux 环境下打开一个 Shell 终端时,会看到命令行中出现了类似下面的一个 Bash 提示符: [...

  • Linux小技巧

    这篇文章是在工作上发现的一些Linux 的小技巧,不定时更新 修改bash提示符 /etc/profile 和 ~...

  • linux 命令终端提示符显示-bash-4.2#解决方法

    linux 命令终端提示符显示-bash-4.2#解决方法 昨天在配置linux,突然发现root登录的xshel...

  • 修改Linux命令提示符的颜色

    bash背景下 linux命令提示符由“username@主机名+路径”构成,默认的命令提示符颜色为白色,我们可以...

  • 9.Linux基本命令操作

    目录: • Linux终端介绍 Shell提示符 Bash Shell基本语法。• 基本命令的使用:ls、pw...

  • 第三章-Linux基本命令操作

    本节所讲内容: 3.1 Linux中断介绍Shell提示符 Bash Shell基本语法 3.2 基本命令的使...

  • 命令行基础

    基础概述 哪些系统提供了命令行 Windows 的命令提示符(CMD)和 Git Bash 是命令行Linux(如...

  • Bash的常用快捷操作

    Bash是目前比较主流linux发行版本的shell解释器,今天我们就来说说它的一些快捷操作。这些操作包括一些快捷...

  • Linux 骚操作

    1. 查看目录结构,包含子目录 tree -d -L 4 -L 控制显示目录层级,此处为显示4级目录 -d 表示只...

  • 命令行的使用

    1.哪些系统提供了命令行 Windows 的命令提示符和 Git Bash 是命令行 Linux(如 Ubuntu...

网友评论

      本文标题:Linux Bash 提示符的一些骚操作

      本文链接:https://www.haomeiwen.com/subject/defhbdtx.html