Linux下PS1设置

PS1简介

PS1命令是linux系统中的一个全局变量,用于定义用户命令行的字符显示。学名为:默认提示符。盲猜Power Shell 1。

PS1变量

# shell查看变量值
[root@test ~]# echo $PS1
[\u@\h \W]\$
# 查看系统设置中的PS1变量值
[root@test ~]$ set | grep PS1
PS1='[\u@\h \W]$ '

可以看到该值跟终端的呈现有相同的地方,两边方括号,中间有@符号,最后有个命令行提示符$,那么这些是什么含义呢?

PS1的常用参数以及含义:
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称
\h :仅取主机名中的第一个名字
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称
\W :利用basename取得工作目录名称,只显示最后一个目录名
# :下达的第几个命令
$ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $

所以,linux默认的命令行提示信息的格式: PS1='[\u@\h \W]$ ’ 的意思就是:[当前用户的账号名称@主机名的第一个名字 工作目录的最后一层目录名]#

关于命令行输入闪烁的问题

参数说明
0m无特殊效果
1m字体变粗
2m颜色变化,部分字体变细
3m颜色变化,部分字体倾斜
4m颜色变化,加下滑线
5m颜色变化,文字闪动
6m
9m颜色变化,加删除线
8m黑色文字

最佳配置实践
先查看下网卡名,这里是 eth0,这种方式代价较小

export PS1="\[\e[34m\][\u\[\e[m\]@\h:`ifconfig eth0| sed -nr 's/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'` \[\e[33m\]\w]\[\e[m\]\$"

在PS1中设置字符序列颜色的格式为:[\e[F;Bm] 其中“F”为字体颜色,编号30- 37;“B”为背景色,编号40~47。取消设置:[\e[0m]

颜色编号:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35.青色=36,白色=37

效果演示:
登录用户@主机名:IP地址
这样每次登录后对当前用户和服务器IP一目了然,避免操作多台时容易迷糊。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GaoJamie

您的鼓励将是我更新的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值