Home > Article > Operation and Maintenance > Where are the environment variables in linux
Linux environment variables have two locations: 1. The bashrc, profile and environment files in the "/etc" directory, which contain configured environment variables; 2. ".bashrc" in the user directory and ".bash_profile" files, both of which are hidden files.
#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.
1. System location, the three files bashrc, profile, and environment in the /etc directory
2. User directory (root or ordinary user). Note that there are dots in front of these two files, which are hidden files.
Let’s talk about these three system files first and list the file contents (refer to CentOS7). /**/Add comments
# /etc/bashrc # System wide functions and aliases /* 系统广泛功能(函数)和别名 */ # Environment stuff goes in /etc/profile /* 环境东西(环境变量)在/etc/profile文件中 */ /* 修改这个文件不是一个好主意,除非你知道自己在干什么。*/ /* 在/etc/profile.d/目录下创建一个自定义脚本会是修改环境变量的更好方法 */ /* 但是会阻止在将来更新时合并的需要 */ # It's NOT a good idea to change this file unless you know what you # are doing. It's much better to create a custom.sh shell script in # /etc/profile.d/ to make custom changes to your environment, as this # will prevent the need for merging(合并) in future updates. …………………………………………………………………… …………………………………………………………………… …………………………………………………………………… # /etc/profile # System wide environment and startup programs, for login setup # Functions and aliases go in /etc/bashrc # It's NOT a good idea to change this file unless you know what you # are doing. It's much better to create a custom.sh shell script in # /etc/profile.d/ to make custom changes to your environment, as this # will prevent the need for merging in future updates. …………………………………………………………………… …………………………………………………………………… ……………………………………………………………………
The third file environment file is an empty file when opened, with no tables.
Let’s talk about two more user files and paste the file contents (refer to CentOS7) /**/To add comments
Ordinary users:
root user
# .bashrc # User specific aliases and functions /* 用户指定的别名和函数(功能)*/ alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # .bash_profile # Get the aliases and functions /* 获取别名和函数(功能)*/ if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs /* 用户指定环境变量和启动程序(linux开机启动程序放在这里?还没有试过) */ PATH=$PATH:$HOME/bin export PATH
Comments on these files It has been made very clear that the bashrc file is the user-specified alias and function (function), and the bash_profile file is used to obtain the alias and function (function) in the bashrc file. The user can also specify environment variables and startup programs in this file. . Explicitly stating in the system's bashrc and bash_profile files that creating a custom script in the /etc/profile.d/ directory would be a better way to modify environment variables. As shown in the picture:
The article ends here, but in the actual configuration of environment variables, it is found that if the variables are only configured in the system configuration file, log in to the system terminal as an ordinary user There are environment variables added by yourself. Once su goes to root, the previously configured environment variables will no longer be available in the terminal. The solution is to configure it once in each user's configuration file, which is too troublesome. Create a custom script in the /etc/profile.d/ directory No matter how you switch users in a terminal, the environment variables still exist.
Related recommendations: "Linux Video Tutorial"
The above is the detailed content of Where are the environment variables in linux. For more information, please follow other related articles on the PHP Chinese website!