Linux 中 ~/.bashrc、/etc/profile、etc/bashrc 的区别
/etc/profile
其实看名字就能了解大概了, profile 是某个用户唯一的用来设置环境变量的地方, 因为用户可以有多个 shell 比如 bash, sh, zsh 之类的, 但像环境变量这种其实只需要在统一的一个地方初始化就可以了, 而这就是 profile.
当用户第一次登录时,该文件被执行。也就是说这个文件对每个用户都有效,用于获取系统的环境信息。
~/.bashrc
该文件存储的是专属于个人bash shell的信息,只对当前登录的用户有效。当登录时以及每次打开一个新的shell时,执行这个文件。在这个文件里可以自定义用户专属的个人信息(比如环境变量)。
/etc/bashrc
为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读取。也就是说,当用户shell执行了bash时,运行这个文件。
bashrc在Ubuntu下叫做bash.bashrc。bashrc 也是看名字就知道, 是专门用来给 bash 做初始化的比如用来初始化 bash 的设置, bash 的代码补全, bash 的别名, bash 的颜色. 以此类推也就还会有 shrc, zshrc 这样的文件存在了, 只是 bash 太常用了而已。
相关文件的读取顺序
在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、 ~/.bash_login或 ~/.profile文件中的其中一个,执行的顺序为:~/.bash_profile、 ~/.bash_login、 ~/.profile。
如果 ~/.bash_profile 文件存在的话,一般还会执行 ~/.bashrc文件。因为一般在 ~/.bash_profile 中会使用 . ~/.bash_profile 执行 .bashrc。
来源:/etc/profile,/etc/bashrc与~/.bashrc的区别及联系 - 知乎 (zhihu.com)
相关文章
- linux rename重命名文件夹名字
- Linux yum upgrade和yum update区别
- 用linux mail命令发送邮件[Linux]
- Ubuntu——每日小贴士:Linux上的时光机
- Linux有问必答 - 如何在linux上安装WPS
- 在linux上使用交换文件扩展交换空间
- Linux Deploy在安卓手机安装LINUX系统
- CentOS Linux和CentOS Stream 区别
- linux下扇区、块、页的区别+inode与高速缓冲区在linux文件系统的作用
- [转]Linux系统下yum和apt-get的区别
- linux各级目录介绍,linux和windows文件系统区别
- 【Linux】手把手教你如何搭建linux环境---云服务器
- Linux 内核即插即用规范
- lilybbs-faq - linux入门以及百合 Linux 版精华区导读
- Linux C编程中条件变量与互斥锁、信号量的区别
- Linux下的命令行上网
- Linux学习---linux下的彩蛋和各种有趣的命令
- Linux环境下搭建samba服务
- 【Linux】linux经常使用基本命令
- 【Linux】linux经常使用基本命令
- linux下创建和删除软、硬链接
- Linux - lib, lib32, lib64, libx32和libexec文件夹的区别
- Linux 时钟同步服务关于服务端器和客户端的设置
- linux 安装问题make: 没有指明目标并且找不到makefile。 停止