本文主要是介绍BASH脚本基础:环境变量PS3介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这篇文章介绍一下Bash中的环境变量PS3。
PS3 是什么
PS3 是Prompt String 3的缩写,它是Linux/Unix下的一个用于控制select命令创建的菜单提示信息的环境变量。
select使用介绍
关于select的使用介绍可以参看:
- https://liumiaocn.blog.csdn.net/article/details/104112272
示例代码
本文使用如下示例代码对PS3的使用进行说明:
liumiaocn:~ liumiao$ cat test-ps3.sh
#!/bin/shIFS_OLD=$IFS
IFS=/
MENU_ITEMS=("Start Kubernetes"/"Stop Kubernetes"/"Restart Kubernetes"/"Status Kubernetes")
echo "[PS3]: $PS3"
select MENU_ITEM in ${MENU_ITEMS[@]}
doecho "Menu Item Selected: $MENU_ITEM"break
done
IFS=$IFS_OLD
liumiaocn:~ liumiao$
代码说明:功能非常简单,模拟显示一下Kubernetes启动、停止、重启以及状态显示的菜单生成。
PS3未设定下的select菜单提示
PS3缺省没有设定时,select菜单等待用户输入的时候会提示#?,比如本文示例代码在PS3未设定时(缺省状态)的设定下执行结果如下所示
liumiaocn:~ liumiao$ sh test-ps3.sh
[PS3]:
1) Start Kubernetes 3) Restart Kubernetes
2) Stop Kubernetes 4) Status Kubernetes
#? 4
Menu Item Selected: Status Kubernetes
liumiaocn:~ liumiao$
设定PS3修改select菜单提示信息
通过修改PS3可以间接修改select菜单的提示信息,比如我们通过export修改此环境变量的值,然后执行确认结果如下:
liumiaocn:~ liumiao$ export PS3="Please input your choice: >"
liumiaocn:~ liumiao$ sh test-ps3.sh
[PS3]: Please input your choice: >
1) Start Kubernetes 3) Restart Kubernetes
2) Stop Kubernetes 4) Status Kubernetes
Please input your choice: >3
Menu Item Selected: Restart Kubernetes
liumiaocn:~ liumiao$
可以看到PS3的内容替代了缺省的#? ,修改了默认显示的信息,这也是PS3环境变量引入的重要原因。
注意:本文示例代码中使用export环境变量的方式,是为了不修改示例代码进行PS3的使用说明,在实际的使用中直接修改之后使用即可发生变化。
这篇关于BASH脚本基础:环境变量PS3介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!