我的 Gnu/Linux 系统是 red hat,我从 xshell 进行 ssh。命令提示符格式如下:
[[email protected] /home/qihang.gqh/online/h5_reco/user_level_1.0]
$vi dn_click.py
我记得还有另一种格式,当前工作字典位于命令前面,如下所示:
user_level_1.0# *****(command)
如何切换格式?
答案1
以下是关于提示环境变量的简单解释(摘自 bash 手册页):
PS0 – 该参数的值像 PS1 一样展开,并在读取命令之后和执行命令之前由交互式 shell 显示。
PS1 – 该参数的值被扩展(请参阅下面的提示)并用作主要提示字符串。默认值为 \s-\v\$ 。
PS2 – 该参数的值与 PS1 一样扩展,并用作辅助提示字符串。默认为>
PS3 – 该参数的值用作选择命令的提示
PS4 – 该参数的值与 PS1 一样扩展,并且在执行跟踪期间显示每个命令 bash 之前打印该值。 PS4 的第一个字符根据需要被复制多次,以指示多个间接级别。默认为+
这里有一些您可以在您的格式中使用的变量:
\a
: ASCII 响铃字符 (07)
\d
:“工作日月份日期”格式的日期(例如“5 月 26 日星期二”)
\D{format}
:将格式传递给strftime(3),并将结果插入到提示字符串中;空格式会产生特定于区域设置的时间表示。大括号是必需的
\e
: ASCII 转义字符 (033)
\h
:第一个“.”之前的主机名
\H
: 主机名
\j
:当前由 shell 管理的作业数量
\l
:shell 终端设备名称的基本名称
\n
: 新队
\r
: 回车
\s
:shell 的名称,$0 的基本名称(最后一个斜杠后面的部分)
\t
:24 小时制 HH:MM:SS 格式的当前时间
\T
:12 小时制 HH:MM:SS 格式的当前时间
\@
:当前时间(12 小时 am/pm 格式)
\A
:24 小时制 HH:MM 格式的当前时间
\u
:当前用户的用户名
\v
:bash 的版本(例如 2.00)
\V
:bash的发布,版本+补丁级别(例如2.00.0)
\w
:当前工作目录,$HOME 缩写为波浪号
\W
:当前工作目录的基本名称,$HOME 缩写为波浪号
\!
:该命令的历史编号
\#
:该命令的命令号
\$
:如果有效UID为0,则为#,否则为$
\nnn
:八进制数nnn对应的字符
\\
: 反斜杠
\[
:开始一系列非打印字符,可用于将终端控制序列嵌入到提示中
\]
:结束非打印字符序列
所以:一个简单的例子
PS1= "\h:\! \w \$"
形成更多信息你可以看到bash男人页
答案2
如果您想看到:(当前目录的最后一部分)后跟井号,您可以使用:
PS1='\W# '
.bashrc
将此行放入您的主目录中的文件中。
尽管我会警告您不要#
在非 root 提示符中使用,因为习惯上在非 root 提示符字符串和root 提示符中使用类似>
或 的内容。$
#