Linux系统修改命令提示符格式及颜色
放到全局环境变量。注意自己是放全局还是自己家目录下环境的
echo "export PS1='[\[\e[35;1m\]\u\[\e[31;1m\]@\[\e[34;1m\]\h \[\e[33;1m\]\w]\[\e[36;1m\]$ \[\e[0m\]'" >>/etc/profile
source /etc/profile
[root@mcw1 /opt]$ tail -1 /etc/profile
export PS1='[\[\e[35;1m\]\u\[\e[31;1m\]@\[\e[34;1m\]\h \[\e[33;1m\]\w]\[\e[36;1m\]$ \[\e[0m\]'
这个空格 是划分主机名和路径之间的空格符
单引号和双引号没有影响
一、修改命令提示符格式
今天跟大家分享一下如何在Linux系统中修改命令提示符格式以及命令提示符颜色的技巧。通常情况下,我们的命令提示符是这个样子的
[root@RedHat7 ~]#
我们不难发现其命令提示符组成的各个部分:
[用户@计算机名 当前目录]#
#----超级用户
$----普通用户
当前目录是以简略格式显示,如果要显示当前目录的具体路径,用 pwd命令,这个命令组成方式,又一个环境变量PS1控制,下面我们具体了解一下该环境变量。我们先调取该变量的具体参数
[root@RedHat7 ~]# echo $PS1
[\u@\h \W]\$
[root@RedHat7 ~]#
1
2
那么里面的 [\u@\h \W]$分别代表什么呢?
PS1(是数字1而不是字母l),每个版本bash的PS1变量内的特殊符号可能有些小的差异,
你可以先man bash 一下。
下面是RedHat7环境下默认的特殊符号所代表的意义:
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称。例如:我的机器名称为:RedHat7.linux,则这个名称就是RedHat7.linux
\h :仅取主机的第一个名字,如上例,则为RedHat7,而.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
\# :下达的第几个命令
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
默认的PS1内容为: PS1='[\u@\h \W]\$ ' ,
所以默认的提示符就是: [root@linux ~]#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
当我们了解上述参数之后,在实际操作过程中,我们如果想显示主机全名以及完整的工作目录,我们就需要修改PS1的相应参数,并写入/etc/profile文件中
例如:修改前,我们默认的PS1对于主机名、目录都只是显示一部分,
[root@RedHat7 ~]# hostname
RedHat7.linux
[root@RedHat7 ~]#
[root@RedHat7 ~]# cd /etc/sysconfig/network-scripts/
[root@RedHat7 network-scripts]#
1
2
3
4
现在我们想让主机名和工作路径全部显示出来,根据上面参数,我们需要用到大写的H和小写的w,我们用echo命令将修改后的PS1追加到 /etc/profile文件中(不建议这样操作,最好还是vim 进到文件去编辑好些),并更新该文件
[root@RedHat7 ~]# echo "PS1='[\u@\H \w]\$' " >> /etc/profile
[root@RedHat7 ~]# source /etc/profile
1
如果是在虚拟机里面或者是Xshell中,我们可能还要重启或断开连接再次连接才能看到结果。
[root@RedHat7.linux ~]$ cd /etc/sysconfig/network-scripts/
[root@RedHat7.linux /etc/sysconfig/network-scripts]$
1
此时,我们可以看到主机全名和工作路径的全部。
二、修改命令提示符颜色
我们先看一下这张图片中的命令提示符。
是怎么做到的呢?我们需要知道PS1颜色相关参数
颜色值设置
PS1中设置字符颜色的格式为:\[\e[F;Bm\],\[\e[0m\] 其中
“F“为字体颜色,编号为30-37,
“B”为背景颜色,编号为40-47。用 \[\e[0m\]结束颜色设置,颜色表如下:
F B
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
根据颜色表,套用入字符颜色设置格式中,就可以对linux终端命令行颜色进行个性化设置。
比如要设置命令行的格式为绿字黑底,显示当前用户的账号名称、
主机的第一个名字、完整的当前工作目录名称、24小时格式时间,就可以使用如下的命令:
export PS1='\[\e[30;1m\][\u@\h \w]\$ \[\e[0m\] -----黑色提示符
export PS1='\[\e[31;1m\][\u@\h \w]\$ \[\e[0m\] -----红色提示符
export PS1='\[\e[32;1m\][\u@\h \w]\$ \[\e[0m\] -----绿色提示符
export PS1='\[\e[33;1m\][\u@\h \w]\$ \[\e[0m\] -----黄色提示符
export PS1='\[\e[34;1m\][\u@\h \w]\$ \[\e[0m\] -----蓝色提示符(天蓝)
export PS1='\[\e[35;1m\][\u@\h \w]\$ \[\e[0m\] -----粉色提示符
export PS1='\[\e[36;1m\][\u@\h \w]\$ \[\e[0m\] -----蓝色提示符(海蓝)
export PS1='\[\e[37;1m\][\u@\h \w]\$ \[\e[0m\] -----白色提示符
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
我们先看一下PS1原本的参数设置:[\u@\h \W]$
设置颜色:
以 [\e[35;1m]开始
以 [\e[0m]结束
我们想设置成上图那样的颜色,将这条命令添加到/etc/profile文件中即可
export PS1='[\[\e[35;1m\]\u\[\e[31;1m\]@\[\e[34;1m\]\h\[\e[33;1m\]\w]\[\e[36;1m\]$ \[\e[0m\]'
这样就ok了。
原文链接:https://blog.csdn.net/weixin_43535689/article/details/104590808
Linux系统修改命令提示符格式及颜色的更多相关文章
- linux系统修改CST时区
================================================= [root@tzyyserveryg ~]# date -R Fri, 28 Nov 2014 08 ...
- Linux系统文件名字体不同的颜色都代表什么
Linux系统文件名字体不同的颜色都代表什么 在Linux中,文件的颜色都是有含义的. 其中, Linux中文件名颜色不同,代表文件类型不一样. 如下所示: www.2cto.com ...
- linux 修改命令提示符&ubuntu目录颜色个性化
1.linux 命令提示符个性化 在 ANSI 兼容终端(例如 xterm.rxvt.konsole 等)里, 可以用彩色显示文本而不仅仅是黑白. 本文示范了如何使用粗体和彩色的文字. 相信每 ...
- Linux系统中命令提示符解释-Linux中命令格式、分类-bash中的快捷键
1.命令提示符 [root@mysqlserver01 opt]# [root@mysqlserver01 ~]# root 当前用户名 @ 固定的(格式) mysqlserver01 主机名 opt ...
- Linux如何修改命令提示符
1.什么是命令提示符 命令提示符是CLI(command-line interface,命令行界面)在人机交互的过程中提示用户可以进行命令输入的特殊符号,在Linux中普通用户的prompt为“$”, ...
- Linux系统修改/etc/sysconfig/i18n文件,桌面无法正常显示
在Windows环境下使用SSH Secure Shell Client登陆VMware Workstation中Linux系统查询hive表时,中文显示乱码:数字和url显示为NULL,网上说: 1 ...
- redhat系列linux系统 修改主机名的正确方法
##注:无特别说明,以下称呼的linux系统统一视为redhat系linux redhat系列linux系统 如果想修改主机名 很多人可能都会以为是: $hostname NEW-NAME 或者在 / ...
- linux系统修改系统时间与时区
有装过Linux系统的人,可能都会有这样的经历,就是该机器安装windows系统时,时间正确,但是安装了linux系统后,尽管时区选择正确,也会发现系统时间不对.这是由于安装系统时采用了UTC,那么什 ...
- window 系统上传文件到linux 系统出现dos 格式换行符
Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行,所以为了避免这种情况的发生,我们可以 ...
- Linux系统修改服务器系统时间
修改Linux系统时间,需要执行两个命令,如下: 第一条指令:date –s '2017-07-12 10:22:30' 第二条指令:clock –w //将日期写入CMOS
随机推荐
- OpenHarmony Meetup成都站招募令
OpenHarmony Meetup 城市巡回成都站火热招募中!! 日期:2023 年 10 月 27 日 14:00 地点:电子科技大学(沙河校区)学术交流中心一楼 104 会议室 与 OpenHa ...
- 为什么 L1 正则化能做特征选择而 L2 正则化不能
假设我们的模型只有一个参数 \(w\),损失函数为 \(L(w)\),加入 L1 和 L2 正则化后的损失函数分别记为 \(J_1(w), J_2(w)\): \[\begin{gathered} J ...
- Servlet和springMVC
什么是Servlet? Servlet是使用Java语言编写的运行在服务器端的程序.狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一 ...
- CentOS8 / CentOS7 yum源最新修改搭建 2022.3.1
Part I CentOS 8 源更新 ========================================== 2022年过完后,发现公司里面的所有服务器yum都不能用了,一直报错 按照 ...
- 实训篇-JavaScript-打地鼠
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- vue3 快速入门系列 —— 组件通信
vue3 快速入门系列 - 组件通信 组件通信在开发中非常重要,通信就是你给我一点东西,我给你一点东西. 本篇将分析 vue3 中组件间的通信方式. Tip:下文提到的绝大多数通信方式在 vue2 中 ...
- 简述Linux磁盘IO
1.什么是磁盘 在讲解磁盘IO前,先简单说下什么是磁盘.磁盘是可以持久化存储的设备,根据存储介质的不同,常见磁盘可以分为两类:机械磁盘和固态磁盘. 1.1 机械磁盘 第一类,机械磁盘,也称为硬盘驱动器 ...
- pypinyin 获取拼音,作为智能设备的唤醒比对结果
from pypinyin import lazy_pinyin,TONE,TONE2,TONE3,NORMAL a = "小七同学" b = "小琦同学" c ...
- 【c++】类valarray介绍
valarray类用于处理数组中的数值,如将所有元素相加,找出最大.最小值,数组长度. 如何使用valarray类: 1.首先需要声明头文件 #include<valarray&g ...
- EMT4J——让 Java 应用升级更轻松
简介: EMT4J 是什么?如何使用 EMT4J 工具进行 Java 应用升级? 前言 JDK 升级对于 Java 应用来说是不得不面对的事情,一方面 Java 生态系统希望 Java 应用能跟上最新 ...