Linux中的环境变量PS1,打造你的专属终端
介绍
好看的终端是怎么做的呢?通过PS1这个环境变量!
PS1的格式
PS1='[\u@\h \w]\$ '
样式:
解释:
[
是普通字符\u
代表用户@
是普通字符\h
是主机名(只取第一个名字)\w
是完整的工作目录名称。家目录会以 ~代替]
是普通字符\$
是提示字符,如果是root时,提示符为:# ,普通用户则为:$- 最后应有一个空格,提高可读性。
所有转义字符:
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
\# :下达的第几个命令
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
\! :命令行动态统计历史命令次数(连续两个相同命令按一个命令计算)
\# :命令行动态统计历史命令次数(连续两个相同命令会累加)
设置字体样式
可以设置背景色、字体颜色和其他样式
格式
\[\e[A;F;Bm\] #放在字体的左边,可以影响后面所有字体的样式
解释:
- F代表字体颜色值(Font),颜色编号30~37。
- B代表背景颜色值(Background),颜色编号40~47。
- A代表加粗、下划线等样式。编号:0~8。
- A、B、F之间用分号隔开,顺序可以任意。
- 如果不想有某样式,省略即可。特殊的:
\[\e[0m\]
表示没有样式。这样可以避免被前面的样式影响。
所有颜色:
F B 颜色
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
所有样式:
0 关闭所有属性
1 高亮显示
2 所有字符都有下划线
3 斜体
4 用户输入输出带有下划线
7 反显,有字符的地方有背景
举例
解释:
\[\e[32;47m\]
表示字体为绿色,背景为白色。\[\e[0m\]
表示无样式,避免被前面的\[\e[32;47m\]
影响。- 最后的
\[\e[04m\]
表示用户输入输出的样式:下划线。
小建议
将各种样式用变量名代替,方便阅读和设置
export lack=$'\[\e[1;30m\]'
export red=$'\[\e[1;31m\]'
export green=$'\[\e[1;32m\]'
export yellow=$'\[\e[1;33m\]'
export blue=$'\[\e[1;34m\]'
export magenta=$'\[\e[1;35m\]'
export cyan=$'\[\e[1;36m\]'
export white=$'\[\e[1;37m\]'
export normal=$'\[\e[m\]'
进阶
如果当前的目录是github项目,可以动态显示当先所在的分支。
function git_branch {
branch="`git branch 2>/dev/null | grep "^\*" | sed -e "s/^\*\ //"`"
if [ "${branch}" != "" ];then
if [ "${branch}" = "(no branch)" ];then
branch="(`git rev-parse --short HEAD`...)"
fi
echo " ($branch)"
fi
}
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(git_branch)\$ '
效果:
那年,郭少在京城。
Linux中的环境变量PS1,打造你的专属终端的更多相关文章
- Linux中PATH环境变量的作用和使用方法
关于PATH的作用:PATH说简单点就是一个字符串变量,当输入命令的时候LINUX会去查找PATH里面记录的路径.比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls这个命令根 ...
- linux中的环境变量/etc/profile /etc/bashrc ~/.bash_profile ~/.bashrc
来源:https://blog.csdn.net/zzhongcy/article/details/108663751 /etc/profile ============ 此文件为系统的每个用户设置环 ...
- Linux有问必答:如何在Linux中修改环境变量PATH
提问: 当我试着运行一个程序时,它提示“command not found”. 但这个程序就在/usr/local/bin下.我该如何添加/usr/local/bin到我的PATH变量下,这样我就可以 ...
- Linux中的环境变量PATH
一.介绍 在讲环境变量之前,先介绍一下命令which,它用于查找某个命令的绝对路径,示例如下: 在上面的示例中,用which查到rm命令的绝对路径为/usr/bin/rm. 那么问题来了:为什么我们使 ...
- Linux中修改环境变量
<1>Linux 的变量作用范围可分为两类:环境变量和本地变量 环境变量,或者称为全局变量,存在与所有的shell 中,在你登陆系统的时候就已经有了相应的系统定义的环境变量了.Linux ...
- Linux中配置环境变量
Linux中环境变量的搭建(推荐用法) 第一步:进入到/etc/profile.d文件夹下 cd /etc/profile.d 第二步:创建并编辑一个my_env.sh文件 vim my_env.sh ...
- linux中的环境变量
linux中用到很多的环境变量的设置,这里推荐一个博客: http://www.cnblogs.com/mengyan/archive/2012/09/04/2669894.html
- Linux中与环境变量相关的函数
1.在终端可以通过env.set命令查看当前的环境变量 2.通过main函数中的第三个参数可以得到当前进程的环境变量列表 int main(int argc , char *argv[] , char ...
- 在linux中配置环境变量
JDK下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 根据Linux ...
- 第二十一篇 Linux中的环境变量简单介绍
环境变量之 PATH 定义解释器搜索用户执行命令的路径 获取PATH变量的值: echo $PATH /usr/local/bin:/usr/local/sbin:/usr/bin:/us ...
随机推荐
- OpenTK 垂直同步对刷新率的影响
本文将和大家介绍 Vsync 垂直同步的开启对 OpenTK 应用的刷新率的影响 在上一篇博客 OpenTK 入门 初始化窗口 告诉了大家如何初始化 OpenTK 承载 OpenGL 的窗口的应用,在 ...
- SQL server 游标使用实例
--创建一个游标 DECLARE my_cursor CURSOR FOR SELECT id, Bran_number, Bran_taxis FROM dbo.Base_Branch; --打开游 ...
- HttpClient配置SSL绕过https证书以及双向认证
HttpClient简介 1.HTTP 协议是 Internet 上使用得最多.最重要的协议之一,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 JDK 的 java ...
- Headless BI
Headless的概念最初的来源与内容管理平台有关,一般是指内容管理平台中的一些应用不提供可视化界面,只是通过API方式把内容以数据的方式给前端.前端根据不同的设备类型,可以再去进行针对性地渲染和展现 ...
- Linux 提权-Sudo_1
本文通过 Google 翻译 Sudo Part-1 – Linux Privilege Escalation - Juggernaut-Sec 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词 ...
- 记一次asp.net 8 服务器爆满的解决过程
1.描述一下服务器配置: 一台2c4g的centos,做api接口反代 一台8c16g的windows 2019 作为实际服务器,跑了iis,sql server,mongodb,redis 2.业务 ...
- kubernets之带有limit的资源
一 pod中容器的limits属性的作用 1.1 创建一个带有资源limits的pod apiVersion: v1 kind: Pod metadata: name: limited-pod s ...
- 带你彻底搞懂递归时间复杂度的Master公式
1. 什么是Master公式 1.1 Master公式的定义 Master公式,又称为Master定理或主定理,是分析递归算法时间复杂度的一种重要工具,尤其适用于具有分治结构的递归算法. \[T(n) ...
- 文字转语音 - 搭建微软tts整合web服务提供api接口(免费)
微软tts是业界公认文字转语音效果最佳本文使用docker搭建微软tts服务并提供api接口对外提供服务对接官方免费在线体验接口,搭建后可免费进行调用使用,不保证永久稳定可用 调用方式url:http ...
- 语义分割评价指标(Dice coefficient, IoU)
语义分割任务常用的评价指标为Dice coefficient和IoU.Dice和IoU都是用来衡量两个集合之间相似性的度量,对于语义分割任务而言即用来评估网络预测的分割结果与人为标注结果之间的相似度. ...