Linux 之 .bashrc 文件的作用
前言
Linux 系统中很多 shell,包括bash,sh,zsh,dash 和 korn 等,不管哪种 shell 都会有一个 .bashrc
的隐藏文件,它就相当于 shell 的配置文件。
提到shell,那么简单来讲就是:一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
Linux 系统中包含多个 .bashrc 文件,使用find命令可以查看得到:
/etc/skel/.bashrc
/data/root/.bashrc
/data/home/her/.bashrc
/root/.bashrc
/home/her/.bashrc
1.个性化设置
例如用户主目录下的 .bashrc
文件,即:~/.bashrc
。
该文件 是 bash
的配置文件,保存个人的一些个性化设置,如命令别名、路径等。
例如设置 命令别名 – 常见的设置如下:
alias ll='ls -l'
2.使用source 使修改之后的配置生效
每次修改 .bashrc
后,使用 source ~/.bashrc
(或者 . ~/.bashrc
)就可以立刻加载修改后的设置,使之生效。
一般会在.bash_profile
文件中显式调用.bashrc
。登陆 linux
启动 bash
时首先会去读取 ~/.bash_profile
文件,这样 ~/.bashrc
也就得到执行了,你的个性化设置也就生效了。
利用这一特性,可以实现一些个性化设置,如:Linux 系统开机执行自动某个脚本文件等,这在自动化运维方面有一定的用处。
1、修改 /home/hj/.bashrc
文件:
sudo vim /home/hj/.bashrc
# 在最后添加两句后保存
echo '这句话开机就会启动' # 打印输出
python3 /home/hj/test.py # 执行 test.py 这个脚本
2、当 Linux 开机后:
可以看到 Linux 开机后加载了 .bashrc
文件。
3.相关profile、bashrc、/.bash_profile、/.bashrc、~/.bash_profile文件含义及作用域
(1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
(4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
(5)~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc /profile中的变量,他们是”父子”关系。
(6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。
参考
1.https://www.cnblogs.com/midworld/p/11006967.html
2.https://blog.csdn.net/gatieme/article/details/45064705