Linux初次修改环境变量

时间:2022-04-08 06:44:37

对于刚刚从windows系统跳到Linux的小白们,相信多少都会出现一些强迫症,希望能将Linux的Terminal能调出点色彩,让其好看些。之前自己也不知道怎么按着百度的教程操作完成的,直到组里新来的小哥哥开始在问该如何设置,才发现玩转Linux系统还是需要从知道其原理开始。

废话不多说拉~先看看Linux开始,系统加载设置文件的顺序:

/etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc]

 [root@localhost ~]$ cat ~/.bashrc
# .bashrc # User specific aliases and functions # Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

此处 if 条件中,是让系统执行该路径下的文件(“点号 + 空格 + 文件”)。

知道Linux加载配置文件后,就可以修改对应的环境变量啦~以修改Shell命令提示符为例:

1. 显示颜色是由变量$PS1控制,可用echo 查看其取值:

 [root@localhost ~]$ echo $PS1
\[\e[;40m\][\u@\h \W]$\e[m

其中PS1常用的参数含义如下:

\d :#代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :#完整的主机名称
\h :#仅取主机的第一个名字
\t :#显示时间为24小时格式,如:HH:MM:SS
\T :#显示时间为12小时格式
\A :#显示时间为24小时格式:HH:MM
\u :#当前用户的账号名称
\v :#BASH的版本信息
\w :#完整的工作目录名称
\W :#利用basename取得工作目录名称,所以只会列出最后一个目录
\# :#下达的第几个命令
\$ :#提示字符,如果是root时,提示符为:# ,普通用户则为:$

2. 颜色值设置

PS1中设置字符颜色的格式为:\[\e[F;Bm\],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47。用 \e[m 结束颜色设置,颜色表如下:

F       B
30    40    黑色
31    41    红色
32    42    绿色
33    43    黄色
34    44    蓝色
35    45    紫红色
36    46    青蓝色
37    47    白色

根据颜色表,套用入字符颜色设置格式中,就可以对linux终端命令行颜色进行个性化设置了。比如要设置命令行的格式为绿字黑底,显示当前用户的账号名称、
主机的第一个名字、完整的当前工作目录名称、24小时格式时间,就可以使用如下的命令:
# PS1='[\[\e[32;40m\]\u@\h \w \t]\$'

那以~/.bashrc为例,设置如下:

[root@localhost ~]$ cat ~/.bashrc
# .bashrc # User specific aliases and functions alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i' PS1="\[\e[32;40m\][\u@\h \W]\$\e[m " # Source global definitions
if [ -f /etc/bashrc ]; the
. /etc/bashrc
fi

3. 重新加载.bashrc 生效。

[root@localhost ~]$ source ~/.bashrc