千家信息网

在Linux上如何自定义bash命令提示符

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章给大家分享的是有关在Linux上如何自定义bash命令提示符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在 Linux 中自定义 bash 命令提示符在 bash
千家信息网最后更新 2026年11月02日在Linux上如何自定义bash命令提示符

这篇文章给大家分享的是有关在Linux上如何自定义bash命令提示符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

在 Linux 中自定义 bash 命令提示符

在 bash 中,我们可以通过更改 $PS1 环境变量的值来自定义 bash 命令提示符。

一般情况下,bash 命令提示符会是以下这样的形式:

在上图这种默认显示形式当中,"sk" 是我的用户名,而 "ubuntuserver" 是我的主机名。

只要插入一些以反斜杠开头的特殊转义字符串,就可以按照你的喜好修改命令提示符了。下面我来举几个例子。

在开始之前,我强烈建议你预先备份 ~/.bashrc 文件。

$ cp ~/.bashrc ~/.bashrc.bak
更改 bash 命令提示符中的 username@hostname 部分

如上所示,bash 命令提示符一般都带有 "username@hostname" 部分,这个部分是可以修改的。

只需要编辑 ~/.bashrc 文件:

$ vi ~/.bashrc

在文件的***添加一行:

PS1="ostechnix> "

将上面的 "ostechnix" 替换为任意一个你想使用的单词,然后按 ESC 并输入 :wq 保存、退出文件。

执行以下命令使刚才的修改生效:

$ source ~/.bashrc

你就可以看见 bash 命令提示符中出现刚才添加的 "ostechnix" 了。

再来看看另一个例子,比如将 "username@hostname" 替换为 "Hello@welcome>"。

同样是像刚才那样修改 ~/.bashrc 文件。

export PS1="Hello@welcome> "

然后执行 source ~/.bashrc 让修改结果立即生效。

以下是我在 Ubuntu 18.04 LTS 上修改后的效果。

仅显示用户名

如果需要仅显示用户名,只需要在 ~/.bashrc 文件中加入以下这一行。

export PS1="\u "

这里的 \u 就是一个转义字符串。

下面提供了一些可以添加到 $PS1 环境变量中的用以改变 bash 命令提示符样式的转义字符串。每次修改之后,都需要执行 source ~/.bashrc 命令才能立即生效。

显示用户名和主机名
export PS1="\u\h "

命令提示符会这样显示:

skubuntuserver
显示用户名和完全限定域名
export PS1="\u\H "
在用户名和主机名之间显示其它字符

如果你还需要在用户名和主机名之间显示其它字符(例如 @),可以使用以下格式:

export PS1="\u@\h "

命令提示符会这样显示:

sk@ubuntuserver
显示用户名、主机名,并在末尾添加 $ 符号
export PS1="\u@\h\\$ "
综合以上两种显示方式
export PS1="\u@\h> "

命令提示符最终会这样显示:

sk@ubuntuserver>

相似地,还可以添加其它特殊字符,例如冒号、分号、星号、下划线、空格等等。

显示用户名、主机名、shell 名称
export PS1="\u@\h>\s "
显示用户名、主机名、shell 名称以及 shell 版本
export PS1="\u@\h>\s\v "

bash 命令提示符显示样式:

显示用户名、主机名、当前目录
export PS1="\u@\h\w "

如果当前目录是 $HOME ,会以一个波浪线(~)显示。

在 bash 命令提示符中显示日期

除了用户名和主机名,如果还想在 bash 命令提示符中显示日期,可以在 ~/.bashrc 文件中添加以下内容:

export PS1="\u@\h>\d "

在 bash 命令提示符中显示日期及 12 小时制时间
export PS1="\u@\h>\d\@ "
显示日期及 hh:mm:ss 格式时间
export PS1="\u@\h>\d\T "
显示日期及 24 小时制时间
export PS1="\u@\h>\d\A "
显示日期及 24 小时制 hh:mm:ss 格式时间
export PS1="\u@\h>\d\t "

以上是一些常见的可以改变 bash 命令提示符的转义字符串。除此以外的其它转义字符串,可以在 bash 的 man 手册 PROMPTING 章节中查阅。

你也可以随时执行以下命令查看当前的命令提示符样式。

$ echo $PS1
在 bash 命令提示符中去掉 username@hostname 部分

如果我不想做任何调整,直接把 username@hostname 部分整个去掉可以吗?答案是肯定的。

如果你是一个技术方面的博主,你有可能会需要在网站或者博客中上传自己的 Linux 终端截图。或许你的用户名和主机名太拉风、太另类,不想让别人看到,在这种情况下,你就需要隐藏命令提示符中的 "username@hostname" 部分。

如果你不想暴露自己的用户名和主机名,只需要按照以下步骤操作。

编辑 ~/.bashrc 文件:

$ vi ~/.bashrc

在文件末尾添加这一行:

PS1="\W> "

输入 :wq 保存并关闭文件。

执行以下命令让修改立即生效。

$ source ~/.bashrc

现在看一下你的终端,"username@hostname" 部分已经消失了,只保留了一个 ~> 标记。

如果你想要尽可能简单的操作,又不想弄乱你的 ~/.bashrc 文件,***的办法就是在系统中创建另一个用户(例如 "user@example"、"admin@demo")。用带有这样的命令提示符的用户去截图或者录屏,就不需要顾虑自己的用户名或主机名被别人看见了。

警告:在某些情况下,这种做法并不推荐。例如像 zsh 这种 shell 会继承当前 shell 的设置,这个时候可能会出现一些意想不到的问题。这个技巧只用于隐藏命令提示符中的 "username@hostname" 部分,仅此而已,如果把这个技巧挪作他用,也可能会出现异常。

为 bash 命令提示符着色

目前我们也只是变更了 bash 命令提示符中的内容,下面介绍一下如何对命令提示符进行着色。

通过向 ~/.bashrc 文件写入一些配置,可以修改 bash 命令提示符的前景色(也就是文本的颜色)和背景色。

例如,下面这一行配置可以令某些文本的颜色变成红色:

export PS1="\u@\[\e[31m\]\h\[\e[m\] "

添加配置后,执行 source ~/.bashrc 立即生效。

你的 bash 命令提示符就会变成这样:

类似地,可以用这样的配置来改变背景色:

export PS1="\u@\[\e[31;46m\]\h\[\e[m\] "

感谢各位的阅读!关于"在Linux上如何自定义bash命令提示符"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

命令 提示符 提示 用户 用户名 主机 文件 字符 部分 日期 字符串 转义 一行 内容 时间 配置 小时 情况 样式 格式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中关村互联网科技集团 互联网科技巨头监管 今日互联网科技 互联网科技有限公司经营范围 北京互联网科技有限公司 互联网科技金融公司 北京互联网络科技有限公司 新华互联网科技校企合作 隆华科技工业互联网 昭通云南众福互联网科技有限公司 移动互联网科技公司 玉溪互联网科技怎么选 呼和浩特新华互联网科技学院 国大互联网教育科技有限公司工作 允成互联网科技有限公司融资 济南有互联网科技公司吗 互联网企业科技类企业如何做账 宁波允成互联网科技有限公司 互联网科技企业文化 互联网科技快速发展优美句子 手冲咖啡和咖啡机区别 科技与互联网发展 互联网校园科技培训 昭通互联网科技选哪家 燊美集互联网科技有限公司 威龙国际互联网科技公司 黑科技 体验场景 互联网大会 浙南科技城互联网大厦招聘 半导体是互联网高科技吗 科技互联网公司两年变化
0