导读 我们大多数使用的shell提示符,显示用户名、主机名和当前所在目录。在本文将会介绍如何定制一个自己喜欢的Bash。

了解BASH

shell的提示符是通过一个特殊的shell变量PS1来控制的。还有其他变量,比如PS2、PS3和PS4。Bash在准备读取命令时显示第一个提示符变量PS1

当它需要更多的输入来完成一个命令时,它会显示第二个提示符变量PS2

bash允许通过插入一些“反斜杠”\转义的特殊字符来定制这些提示字符串。

显示当前Bash提示符

[root@localhost ~]# echo $PS1
[\u@\h \W]\$

每个被转义的特殊字符解释如下:

  • \u: 显示当前用户
  • \h: 显示主机名
  • \W: 打印当前所在目录
  • \$: 如果有效UID为0,则显示#(指的是root用户),否则显示$(指的是普通用户)

修改Bash提示符

如果想要使修改的shell提示否永久生效,可以把变量写在家目录下面的.bashrc文件里面。若要想全局生效,所有用户都生效,可以写在/etc/bash.bashrc或者/etc/bashrc配置文件里面。

例如:在提示符中显示用户名、主机名、目录所在的绝对路径、显示24小时制当前时间,将命令保存到~/.bashrc文件中。:

[root@localhost ~]# echo 'export PS1="[\\u@\\h \\W \\A]\\$ "' >> ~/.bashrc
[root@localhost ~]# source ~/.bashrc
[root@localhost ~ 11:28]#


以下是常用特殊字符:

  • \u: 显示当前用户
  • \w: 打印当前所在目录的绝对路径
  • \W: 打印当前所在目录
  • \h: 显示主机名
  • \H: 显示完全合格域名
  • \A: 显示当前时间24小时制
  • \@: 显示当前时间12小时制
  • \$: 如果有效UID为0,则显示#(指的是root用户),否则显示$(指的是普通用户)
  • \j: 当前由shell管理的作业数量

为Bash提示符添加配色

一下是常用的配色,有修改字体颜色、修改为粗体、添加下划线、设置背景颜色等设置:

'\e[0;30m' # 黑色
'\e[0;31m' # 红色
'\e[0;32m' # 绿色
'\e[0;33m' # 黄色
'\e[0;34m' # 蓝色
'\e[0;35m' # 紫色
'\e[0;36m' # 青色
'\e[0;37m' # 白色
'\e[1;30m' # 黑色 粗体
'\e[1;31m' # 红色 粗体
'\e[1;32m' # 绿色 粗体
'\e[1;33m' # 黄色 粗体
'\e[1;34m' # 蓝色 粗体
'\e[1;35m' # 紫色 粗体
'\e[1;36m' # 青色 粗体
'\e[1;37m' # 白色 粗体
'\e[4;30m' # 黑色 下划线
'\e[4;31m' # 红色 下划线
'\e[4;32m' # 绿色 下划线
'\e[4;33m' # 黄色 下划线
'\e[4;34m' # 蓝色 下划线
'\e[4;35m' # 紫色 下划线
'\e[4;36m' # 青色 下划线
'\e[4;37m' # 白色 下划线
'\e[40m' # 黑色 背景
'\e[41m' # 红色 背景
'\e[42m' # 绿色 背景
'\e[43m' # 黄色 背景
'\e[44m' # 蓝色 背景
'\e[45m' # 紫色 背景
'\e[46m' # 青色 背景
'\e[47m' # 白色 背景
‘\e[0m' # 重置为默认值

下面是配色方案,可以把自己喜欢的添加到~/.bashrc文件里面,然后让他生效:

[root@localhost ~ 15:49]# export PS1="\e[0;30m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;31m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;32m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;33m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;34m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;35m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;36m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0;37m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#
[root@localhost ~]#  export PS1="\e[1;30m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;31m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;32m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;33m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;34m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;35m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;36m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[1;37m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#
[root@localhost ~]#  export PS1="\e[4;30m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;31m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;32m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;33m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;34m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;35m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;36m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[4;37m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#
[root@localhost ~]#  export PS1="\e[40m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[41m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[42m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[43m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[44m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[45m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[46m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[47m[\\u@\\h \\W]\\$ \e[m "
[root@localhost ~]#  export PS1="\e[0m[\\u@\\h \\W]\\$ \e[m "


如果想要使提示符的每个部分显示的颜色不同,下面一个例子可以了解一下:

[root@localhost log#] export PS1="\e[35m[\\u\e[m@\e[36m\\h \e[33m\\W]\e[1,33m\\$\e[m "

命令解释:

  • "[\e[35m[\\u: 开头添加中括号"[",当前登录的用户部分使用紫色字体
  • \e[m@: "@"符号不给配色,使用默认颜色
  • \e[36m\\h : 主机名称部分使用青色
  • \e[33m\\W]: 当前所在目录使用黄颜色,在其后面添加中括号"]"
  • \e[1,33m\\$\e[m ": $符号加粗,使用黄颜色

总结

在本文介绍了如何定制一个自己喜欢的Bash Shell提示符,希望可以帮助大家。

原文地址:https://www.linuxprobe.com/bash-prompt-scheme.html

如何修改Bash Shell的提示符的格式和配色相关推荐

  1. Bash shell

    一.认识bash shell 1.登录取得的shell就记录在/etc/passwd这个文件内 可以使用cat /etc/passwd查看 2.bash shell 功能 a. 命令记忆能力(hist ...

  2. [Bash Shell] Shell学习笔记

    1. Shell简介 Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的.Shell既是一种命令语言,又是一种程序设计语言.作为命 ...

  3. Linux命令行–基本的bash shell命令

    启动shell: /etc/passwd:包含系统用户账户列表以及每个用户的基本配置信息 每个条目有七个字段,每个字段用冒号隔开 用户名 用户密码 用户的系统UID 用户的系统GID 用户的全名 用户 ...

  4. Bash Shell学习笔记二

    1.||.&& 和&.|的区别 ||和&&的执行是从左到右,而&和|的执行是两边到中间的(未实际测试,只能确认它不是按顺序执行的) ||和&&a ...

  5. 基本BASH SHELL脚本命令——切换目录以及处理文件和目录的基本知识

    遍历目录 cd destination cd 命令可接受单个参数 destination ,用以指定想切换到的目录名.如果没有为 cd 命令指定目标路径,它将切换到用户主目录. destination ...

  6. 修改bash中PS1命令提示符的颜色

    修改bash中PS1命令提示符的颜色 1. 对比Ubuntu与CentOS的命令提示符 2. CentOS命令提示符颜色设置 3. 颜色以及相关控制字符的含义解释 4. 使用`tput`命令修改终端命 ...

  7. python shell怎么调字体_linux BASH shell下设置字体及背景颜色

    BASH shell下设置字体及背景颜色 echo -e "\e[31mtest\e[41m" \e[30m 将字符的显示颜色改为黑色 \e[31m 将字符的显示颜色改为红色 \e ...

  8. BASH SHELL 脚本基础

    什么是shell     Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命令语言.命令解释程序及程序设计语言的统称. shell是用户和Linux内核之间的接口程序, ...

  9. Bash shell - 2

    Bash 脚本结构化 1 • if-then语句 2 ○ bash将会运行if后面的命令,如果该命令运行结束的退出码是0(运行成功),执行then部分的命令 3 ○ fi语句表示if语句到此结束 4 ...

最新文章

  1. JetsonTX2上安装tensorflow的心酸史
  2. keepalived(9)——sorry_server
  3. tomcat闪退没有报错_Appium在Android平台几种常见报错的解决方案
  4. 前端学习(589):在console中调试日志
  5. hive mysql命令,Hive数据库常用命令
  6. html cookie传参,页面间固定参数,通过cookie传值的实现方法
  7. Java利用jacob实现文档格式转换
  8. 云计算学习笔记002---云计算的理解及介绍,google云计算平台实现原理
  9. WebSocket子协议STOMP详解
  10. Nachos-Lab1-完善线程机制
  11. Javashop连锁门店系统帮助企业快速搭建自己企业商城
  12. ios 模糊搜索支持首字母搜索、拼音搜索、汉字搜索
  13. 零基础一周学会PIC单片机视频教程
  14. The Tangled Web: A Guide to Securing Modern Web Applications 原版pdf
  15. python编写函数求和_Python定义函数实现累计求和操作
  16. 用深度学习给黑白照片上色
  17. python分析每月销售数据_如何用Python分析销售数据
  18. layui-mini+spring boot实现table搜索操作传参
  19. 优化版本的Json Viewer工具
  20. 计算机硬件的发展变化,电脑硬件飞速发展到今天,来看下10年前与现在发生了哪些变化...

热门文章

  1. C# List排序和数字处理(三位加一撇)
  2. 深蓝视觉SLAM课程第四讲--相机模型,非线性优化(G2O)
  3. Mac 有Alt 键吗?Alt 或 Option 键在 Mac 键盘上的作用是什么
  4. Java实现京东登录
  5. 鲑鱼回游java游戏_鲑鱼洄游 一段悲壮的落幕
  6. 红绿蓝三色阈值,比赛
  7. 笔记本电脑更改计算机驱动怎么进不去,笔记本电脑进入不了BIOS的原因与解决办法...
  8. 【ReID】Harmonious Attention Network for Person Re-Identification
  9. c语言实现陷波器算法,50Hz数字陷波器的设计.doc
  10. 牛客笔试OJ-在线编辑器输入输出总结