如何自定义Linux终端提示符

发布者:上海IT外包来源:http://www.lanmon.net点击数:1002

您的Ubuntu系统使用bash或dash作为默认终端应用程序。
您可以根据默认提示输入命令,默认提示通常会在某些预定义的颜色主题中列出您的用户名,主机名和当前目录。
Bash为提示提供了许多自定义选项,您不仅可以使用这些选项来集成提示中的功能,还可以使用不同的颜色区分它们。
在本文中,我们将使用各种示例来自定义和重新着色终端应用程序的提示,以便您可以执行所需的操作。我们在Ubuntu 18.04 LTS系统上运行本文中描述的命令和过程。
查看当前的Bash提示配置
通过Dash或Ctrl + Alt + T快捷方式打开终端时,您将看到以下提示:
Linuxidc @ linuxidc:~ $
此默认格式列出用户名,主机名和用户的当前目录。 Bash从bashrc文件中获取此配置,该文件是为其主目录中的每个用户单独设置的。你可以像这样打开这个文件:
Vim~/.bashrc
位置:/home/username/.bashrc
您也可以使用任何其他文本编辑器打开此文件。
这就是配置文件的样子。我们在此向您展示文档的相关部分。
您在上图中看到的PS1变量具有bash提示符所需的所有配置。我们先来解释一下这个变量中的字符是什么。您可以在else语句后列出的PS1变量中清楚地看到此变量。
\ u-这表示当前用户的用户名
\ h:这表示从完全限定的域名中提取的当前用户的主机名。
\ w:这表示当前的工作目录。主目录由波浪号〜符号表示。
\ $:这意味着您是普通用户($)或root用户(#)。
您还可以通过回显其值来查看PS1变量的配置,如下所示:
自定义Shell提示
既然您知道了提示的存储位置以及PS1变量描述的内容,那么让我们看看如何编辑提示以自定义bash提示。
在编辑PS1变量之前,将其默认内容存储在新变量中非常重要。如果发生错误,这将帮助我们恢复提示的原始配置。在端子:处输入以下命令$ DEFAULT=$ PS1
变量“DEFAULT”现在具有恢复默认提示设置所需的所有信息。
现在让我们用PS1变量做一些实验。输入以下命令:
$ PS1='\ u \ $'
PS1的这个新值对您的提示:有以下影响
现在您只能看到您的用户名和root用户信息,没有颜色,因为尚未设置任何颜色信息。
让我们输入以下命令,以便提示还列出工作目录
$ PS1='\ u: \ w \ $'
PS1的这个新值对您的提示:有以下影响
由于我的工作目录是家,我只能看到〜符号。在其他目录中,例如www.linuxidc.com,我的提示将显示以下信息:
将提示设置回默认值
由于我们将PS1变量的原始配置存储在默认变量中,因此我们可以通过将默认变量的值提供给PS1来将PS1的值设置回默认值。
PS1=DEFAULT
还有什么可以自定义的?
如果希望提示包含特定的自定义文本,则可以使用以下语法:
PS1='[自定义文字] \ u @ \ h: \ w \ $'
例:
我已设置我的提示,包括自定义消息,如下所示:
Linuxidc @ linuxidc:~ $ PS1='Linux Commune www.linuxidc.com \ u @ \ h: \ w \ $'
Linux Commune www.linuxidc.com linuxidc @ linuxidc:~ $
您可以将以下基本字符添加到提示:
角色使用
\ d日期和月份的日期格式。
\ eASCII转义字符
\逃脱角色。
\ h当前用户的主机名,直到'。'
\ H当前用户的主机名。
\ l终端设备的基本名称。
\ j shell运行的作业数。
\承租人。
\ n新线。
\ u当前用户的用户名。
\ vBash版本。
\!打印正在运行的命令的历史记录编号。
您可以使用以下命令在提示中包括当前系统时间:
PS1='\ A \ u: \ w \ $'
PS1的这个新值对您的提示:有以下影响
您还可以自定义提示以包含命令的输出;这允许您在提示中包含无限选项。
语法:
$ PS1='\ u @ \ h on`[command]`\ w \ $'
例:
在此示例中,我将设置一个提示,以包括当前用户所属的主要组的名称。
'id -gn` \ w \ $'$ PS1='\ u @ \ h
着色提示
自定义提示后,您会发现事情看起来有点令人困惑。一个明显的原因是,如果它们都以相同的颜色列出,则很难将一个特征与另一个特征区分开来。现在让我们学习如何为提示着色以使它们更有趣。要为一个或多个要素添加颜色,PS1变量包括颜色标记。下图中突出显示的文本是颜色标记。
这是颜色标记的格式:
\ [\ 033 [COLOR]米\]
例如,我们在默认终端提示中看到的默认用户名和主机名是绿色的,因为下面的颜色标签为:
\ [\ 033 [01;32米\] \Ú@ \ħ\
您可以更改bash提示功能的此颜色值以为其指定新颜色,或者为没有任何颜色的要素添加新颜色标记。
以下是一些常见颜色及其值:
颜色值
Green32
RED31
Black30
Blue34
Cyan36
Purple35
Yellow33
White37
例:
以下命令将提示设置为红色,因为我们在颜色标记中指定了31(红色):
$ PS1='\ [\ 033 [31m \] \ u @ \ h: \ w $'
IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部