Linux系统下——PS1、PS2、PS3、PS4变量详解

目录

前言 

一、PS1变量

1.PS1变量详解 

2.PS1变量可用参数

3.彩色提示符

二、PS2变量

三、PS3变量

1.不使用PS3变量

2.使用PS3变量

四、PS4变量


前言 

在Linux系统中,PS1PS2PS3PS4是特定的环境变量,它们各自在控制提示符和菜单提示信息方面发挥着不同的作用,这些PS变量在Linux系统中为用户提供了灵活的方式来定制和控制命令行的外观和行为,从而提高了用户与系统的交互体验。

注意:如果要长期永久性修改提示符,可以将修改提示符的命令添加到$Home/.bashrc或$Home/.bash_profile文件中

一、PS1变量

主要用于设置Shell命令提示符。每当你在终端中输入命令时,所显示的字符串就是由PS1变量控制的。

可以根据自己的喜好和需要,自定义PS1变量的值,从而改变命令提示符的外观和格式。

其默认值为:[\u@\h \W]$其表示:显示用户主机名称工作目录,可以在终端窗口输入

因为添加了颜色,所以显示的是设置颜色后的内容

1.PS1变量详解 

字符含义
\u当前用户
\h主机名
\W当前所在目录
$代表特权用户或者普通用户,普通用户$+空格,超级用户#+空格

2.PS1变量可用参数

参数含义
\d日期,格式为weekdat month date
\H完整的主机名称
\h仅取主机的第一个名字
\t显示时间为24小时格式,如:HH:MM:SS
\T显示时间为12小时格式
\A显示时间为24小时格式:HH:MM
\u当前用户的账号名称
\vbash版本信息
\w完整的工作目录名称。家目录会以~代替
\W利用basename取得工作目录名称,所以只会列出最后一个目录
#下达的第几个命令
$提示字符,如果是root,提示符为:#,普通用户则为:$
!命令行动态统计历史命令次数

3.彩色提示符

\[\e[F;Bm\]

字体代码背景代码颜色
3040黑色
3141红色
3242绿色
3343黄色
3444蓝色
3545紫红色
3646青蓝色
3747白色

二、PS2变量

这是第二次提示符,用于交互式的Shell中一条命令多行连接时的显示信息。当你的命令行输入长度超过一行时,系统会使用PS2提示符来继续输入。这使得用户可以轻松地在多行中输入长命令,提高命令行操作的效率。

  • 一个非常长的命令可以通过在末尾加“ \ ”使其分行显示

  • PS2多行命令的默认提示符,默认值是>

三、PS3变量

这个环境变量用于控制select命令创建的菜单提示信息。在Linux中,select命令允许用户从一系列选项中选择一个,而PS3变量则负责定义在选择过程中显示的提示符。通过定制PS3,可以让selec命令的菜单提示更符合需求。

1.不使用PS3变量

[root@localhost ~]#vim ps3.sh
[root@localhost ~]#cat ps3.sh 
#!/bin/bash  
  
echo "以下是一些选项,请选择您想要的选项:"  
select option in "选项1" "选项2" "退出"; do  
    case $option in  
        "选项1")  
            echo "您选择了选项1"  
            break  
            ;;  
        "选项2")  
            echo "您选择了选项2"  
            break  
            ;;  
        "退出")  
            echo "退出脚本"  
            exit 0  
            ;;  
        *)  
            echo "无效的选择,请重新选择"  
            ;;  
    esac  
done
[root@localhost ~]#bash ps3.sh 
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
#? 1
您选择了选项1
[root@localhost ~]#bash ps3.sh 
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
#? 2
您选择了选项2
[root@localhost ~]#bash ps3.sh 
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
#? 3
退出脚本

2.使用PS3变量

[root@localhost ~]#vim ps3.sh 
[root@localhost ~]#cat ps3.sh 
#!/bin/bash  
  
# 设置PS3变量以自定义select命令的提示  
 PS3="请做出选择: "  
  
echo "以下是一些选项,请选择您想要的选项:"  
select option in "选项1" "选项2" "退出"; do  
    case $option in  
        "选项1")  
            echo "您选择了选项1"  
            break  
            ;;  
        "选项2")  
            echo "您选择了选项2"  
            break  
            ;;  
        "退出")  
            echo "退出脚本"  
            exit 0  
            ;;  
        *)  
            echo "无效的选择,请重新选择"  
            ;;  
    esac  
done
[root@localhost ~]#bash ps3.sh 
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
请做出选择: 1
您选择了选项1
[root@localhost ~]#
[root@localhost ~]#bash ps3.sh 
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
请做出选择: 2
您选择了选项2
[root@localhost ~]#bash ps3.sh 
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
请做出选择: 3
退出脚本

四、PS4变量

set -x用来修改跟踪输出的前缀,这个变量很少用

[root@localhost etc]#cd /etc/sysconfig/network-scripts/
+ cd /etc/sysconfig/network-scripts/
++ printf '\033]0;%s@%s:%s\007' root localhost /etc/sysconfig/network-scripts
  • 32
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值