Linux的PS1美化

PS1变量参考

字体颜色参考: https://www.ohyee.cc/post/note_bash_terminal
在这里插入图片描述

变量解释
\u:显示当前用户账号
\h:显示当前主机名
\W:只显示当前路径最后一个目录
\w:显示当前绝对路径(当前用户目录会以~代替)
$PWD:显示当前全路径
$$:显示命令行’$$'或者’#'符号
#:下达的第几个命令
\d:代表日期,格式为week day month date,例如:“MonAug1”
\t:显示时间为24小时格式,如:HH:MM:SS
*\T:显示时间为12小时格式
*\A:显示时间为24小时格式:HH:MM
*\v:BASH的版本信息
# 一般颜色符是以[m\]结尾
## 主机名和用户名
export PS1="\[\e[42m\]\h\[\e[m\]  \[\e[42m\]\u\[\e[m\] "

## 主机名
export PS1="\[\e[42m\]\h\[\e[m\] "

终端字体颜色

在这里插入图片描述


临时设定PS1

# 如
export PS1=[\u@\h\w#]$‘

让PS1环境变量为每个用户永久生效

/etc/bashrc的最后一行添加上面PS1变量


让PS1环境变量为某个用户永久生效

就在那个用户的家目录下的.bashrc的最后一行添加上面PS1变量


linux启动后环境变量加载顺序

https://blog.csdn.net/omaidb/article/details/116019501

/etc/profile/etc/profile.d/*.sh~/.bash_profile~/.bashrc/etc/bashrc

Bash在显示PS1之前先执行PROMPT_COMMAND环境变量定义的内容.


PS1美化脚本

以下示例只适用于bash.
echo $STY的意思 : 获取screen会话保持会话ID

建议将ps1美化脚本写在/etc/profile.d/ps1.sh中。

示例1: 以显示home

# \u 表示当前用户的用户名。
# $(echo $STY | cut -d . -f2) 表示获取当前 screen 会话的编号,并去掉前缀部分,只保留编号部分。
# \h 表示主机名。
# \w 表示当前目录的完整路径。
# ${PIPESTATUS[0]} 表示最近一条命令执行后的退出状态码。

PS1='\[\033[01;35m\][\[\033[01;32m\]\u\[\033[01;32m\]$(echo $STY | cut -d . -f2)\[\033[01;35m\] \[\033[01;35m\]\[\033[01;35m\]\h\[\033[01;35m\] \[\033[38;5;39m\]\w\[\033[31m\]] \[\033[38;5;221m\]WORK \[\033[1;37m\]${PIPESTATUS[0]}\[\033[01;36m\] \n# \[\033[00m\]'

# 声明全局变量
export PS1

在这里插入图片描述

示例2: 以绝对路径显示PWD,且以终端颜色显示路径

PS1='\[\033[01;35m\][\[\033[01;32m\]\u\[\033[01;32m\]$(echo $STY | cut -d . -f2)\[\033[01;35m\] \[\033[01;35m\]\[\033[01;35m\]\h\[\033[01;35m\] \[$(tput setaf 0)\]$(pwd)] \[\033[38;5;221m\]WORK \[\033[1;37m\]${PIPESTATUS[0]}\[\033[01;36m\] \n# \[\033[00m\]'

# 声明全局变量
export PS1

在这里插入图片描述

示例3: 以绝对路径显示PWD,且以蓝色显示路径

PS1='\[\033[01;35m\][\[\033[01;32m\]\u\[\033[01;32m\]$(echo $STY | cut -d . -f2)\[\033[01;35m\] \[\033[01;35m\]\[\033[01;35m\]\h\[\033[01;35m\] \[\033[38;5;39m\]$(pwd)\[\033[31m\]] \[\033[38;5;221m\]WORK \[\033[1;37m\]${PIPESTATUS[0]}\[\033[01;36m\] \n# \[\033[00m\]'

# 声明全局变量
export PS1

在这里插入图片描述


zsh的PS1配置

参考:
https://blog.csdn.net/zxc3590235/article/details/109954843
https://blog.csdn.net/u014218108/article/details/51195582
zsh.zshrc会覆盖PS1配置,需要单独在~/.zshrc中配置。

# 编辑.zshrc
vim ~/.zshrc

# 将PS1内容复制进去

# 使PS1变量生效
source ~/.zshrc

PS1变量在线生成工具

https://ezprompt.net/

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

识途老码

赞赏是第一生产力

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

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

打赏作者

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

抵扣说明:

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

余额充值