linux ps1 ps2 ps3 ps4

news/2024/12/23 7:03:14/

Linux用户命令行字符环境变量 - [Linux | UNIX]

Apr 3, 2009

Tag: linux, PS1, PS2

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://fbirdzp.blogbus.com/logs/37423250.html

用户登录Linux系统的字符界面后,就会出现"#"或"$"等命令提示符,比如"[root@pxe root]# “、"[oracle@db1 ~]$”或是 “-bash-3.00#”等等。

通过设置环境变量PS1、PS2、PS3以及PS4来自定义用户命令行的字符显示。如果要长期永久性修改提示符,可以将修改提示符的命令添加到$HOME/.profile或$HOME/.bash_profile文件中。

1. PS1

PS1是主提示符变量,也是默认提示符变量。默认值"/s-/v/$“,显示shell类型和版本。
基本上通过设置PS1来定义命令行提示字符即可,最常用的需求就是显示登录的用户名、主目录、主机名等等,举个例子如下:


 

显示用户名,主机名和动态显示当前目录
-bash-3.00# export PS1="[/u@/h /w]"
[root@MagicLinux ~]cd /etc
[root@MagicLinux /etc]

注意:如果当前目录是用户的HOME目录,则显示"~


 

PS1变量可以使用的参数值有如下:

/d代表日期,格式为weekday month date,例如:"Mon Aug 1"
/H完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
/h仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
/t显示时间为24小时格式,如:HH:MM:SS
/T显示时间为12小时格式
/A显示时间为24小时格式:HH:MM
/u当前用户的账号名称
/vBASH的版本信息
/w完整的工作目录名称。家目录会以 ~代替
/W利用basename取得工作目录名称,所以只会列出最后一个目录
/#下达的第几个命令
/$提示字符,如果是root时,提示符为:# ,普通用户则为:$
/[字符"["
/]字符"]"
/!命令行动态统计历史命令次数

2. PS2

PS2是副提示符变量,默认值是''> ''。
PS2一般使用于命令行里较长命令的换行提示信息,比如:


默认设置
-bash-3.00# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc /
> compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel

自定义设置
-bash-3.00# export PS2="PS2 => "
-bash-3.00# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc /
PS2 => compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel


 

3. PS3,PS4

这两个环境变量可能用得不多,不研究了。如果有兴趣,可以学习bash里面的简介。

(可以百度 linux超級技巧,第33章專門講述了ps3,ps4)

PS3    The value of this parameter is used as the prompt for the select command (see SHELL GRAMMAR above).
PS4    The value of this parameter is expanded as with PS1 and the value is printed before  each  command  bash displays  during an execution trace.  The first character of PS4 is replicated multiple times, as neces-sary, to indicate multiple levels of indirection.  The default is ''+ ''.


http://www.ppmy.cn/news/312947.html

相关文章

PS2手柄通讯协议解析---附资料和源码

文章目录 一.PS2介绍二.PS2通讯协议介绍(1)PS2端口介绍(2)PS2通讯过程 三.基于STM32的PS2通信源码四.文档与源码下载链接 一.PS2介绍 今天就带大家来认识一下PS2的通讯协议,如果你需要用PS2无线手柄搭配单面机来DIY制作…

PS2接口和协议

这段时间在处理一个PS2键盘的问题:用自己设计的矩阵键盘模拟PS2键盘,用单片机的I/O口模拟PS2的接口,和主机通讯。 基本介绍: 虽然现在PS2在实际应用中越来越少,但是PS2在USB出来之前发挥了很大的作用。比如说我们的PS2…

PS2接口

一、简介。 PS2是一种非常古老的接口,随着USB接口的普及,目前已经有很多电脑不支持PS2接口了。 PS2接口主要应用在鼠标、键盘。 PS2缺点是体积大,不支持热插拔;优点是全键无冲突。(也有部分USB键盘可以做到全键无冲…

【STM32 嵌入式设计】PS2索尼游戏手柄解析和代码开发

基于PS2索尼游戏手柄开发 最近师妹拿了个PS2手柄给我 安排!!!! 代码下载链接 在32上面 成功用PS2 控制显示屏输出 PS2是一个很好学习通讯时序的的工具 这里写下他的实现代码和我的学习思路 123456789DI/DATDO/CMDNCVDDGNDCS/S…

SONY无线PS2遥控手柄与stm32单片机通信

SONY的PS2无线手柄是索尼游戏机的遥控手柄,控制协议已被全球创客破解,可以方便用于机器人控制器,作为遥控输入设备。 这款手柄价格便宜,性价比极高。 原理 PS2无线手柄按键比较多,例如在一款游戏中的设定&#xff1…

异常数据检测 | Python实现孤立森林(IsolationForest)异常数据检测

文章目录 文章概述模型描述源码分享学习小结文章概述 异常数据检测 | Python实现孤立森林(IsolationForest)异常数据检测 模型描述 IsolationFores算法它是一种集成算法(类似于随机森林)主要用于挖掘异常(Anomaly)数据,或者说离群点挖掘,总之是在一大堆数据中,找出与其它数据…

计算机网络知识点笔记(1)概述

文章目录 1.计算机网络在信息时代中的作用2.互联网概述2.1.网络的网络2.2.互联网基础结构发展的三个阶段2.3.互联网的标准化工作 3.互联网的组成3.1.互联网的边缘部分3.1.1.客户-服务器方式3.1.2.对等连接方式(P2P方式) 3.2.互联网的核心部分3.2.1.电路交…

软件测试—冒烟测试

1. 核心 冒烟测试就是完成一个新版本的开发后,对该版本最基本的功能进行测试,保证基本的功能和流程能走通。 如果不通过,则打回开发那边重新开发; 如果通过测试,才会进行下一步的测试(功能测试,集成测试…