修改shell默认样式

概览:

PS(x)介绍

Prompt Statement variables: PS变量介绍

  • PS1 - 默认交互式提示(这是最经常自定义的变量)
  • PS2 - 继续交互式提示(当一行长命令在行末用\分解时)default =“>”
  • PS3 - 在shell脚本中“select”循环使用的提示
  • PS4 - 在调试模式下执行shell脚本时使用的提示符(“ set -x”将打开它)default =“+”
  • PROMPT_COMMAND - 如果设置了此变量并且具有非null值,则它将在PS1变量之前执行。

自定义PS1

参考

安装依赖

1
sudo apt-get install fonts-powerline

配置文件

xxx.ps1 文件位置随便

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/bash --posix
# @Author: Mardan
# @Date: 2019-04-22 18:15:33
# @Last Modified by: Serendipity
# @Last Modified time: 2019-04-22 19:48:40

tag_info='Mardan_666'
tag_sentence='信息通达天下 软件兼容世界'
#colorful displayer var
date_var='\[\033[48;5;250m\]\[\033[2;30m\]日期:\d \T\[\033[0m\]\[\033[38;5;250m\]\[\033[48;5;69m\]\[\033[0m\]'
user_var='\[\033[48;5;69m\]\[\033[2;30m\] 用户:\u \[\033[0m\]\[\033[38;5;69m\]\[\e[48;5;119m\]\[\033[0m\]'
hostname_var='\[\e[48;5;119m\]\[\033[2;30m\] 主机名:\h \[\033[0m\]\[\e[38;5;119m\]\[\e[48;5;89m\]\[\033[0m\]'
command_var='\[\e[48;5;89m\]命令总计:\#/\! 后台:\j\[\033[0m\]\[\e[38;5;89m\]\[\033[0m\]'
tag_secetion1='\[\033[1;46m\]\[\033[2;30m\]${tag_info} \[\033[0m\]\[\033[0;36m\]\[\033[0m\]'
tag_secetion2=' ⚑\[\033[1;32m\] "${tag_sentence}"\[\033[0m\]⚡'
tag_var=${tag_secetion1}${tag_secetion2}
permssion_var='\$ '
workdir_var='\[\033[2;3;4;92m\]工作目录:\w\[\033[0m\]'
wrap_var='\n'

PS1=${wrap_var}${date_var}${user_var}${hostname_var}${command_var}${wrap_var}${tag_var}${wrap_var}${workdir_var}${wrap_var}${permssion_var}

引用配置

再家目录下的.bashrc引用之前的PS1配置

1
source ~/my.ps1

也可以重命名为.my.ps1,让其进入隐藏状态。