Linux环境变量是一种在操作系统中定义的变量,它们包含了一些操作系统或应用程序的设置信息,可以在程序运行时动态地改变。环境变量的作用如下:
程序的执行路径:环境变量PATH定义了操作系统在哪些目录中查找可执行文件。通过将可执行文件所在的目录添加到PATH中,可以使程序在任何位置运行。配置文件的路径:环境变量HOME指定了用户主目录的路径,一些应用程序会在这个目录中查找配置文件。资源限制:环境变量ULIMIT可以控制操作系统对进程的资源使用限制,例如内存、CPU时间等。应用程序的配置:一些应用程序会使用环境变量来配置其行为,例如JAVA_HOME用于指定Java安装的位置。程序运行时的临时设置:有些程序在运行时需要根据不同的环境进行不同的配置,例如GOPATH用于指定Go编译器的工作路径。总之,环境变量在Linux系统中扮演着非常重要的角色,它们可以方便地配置操作系统和应用程序的行为,提高系统的可维护性和可定制性。
环境变量的查看 #在Linux中,可以使用以下命令来查看当前的环境变量:
printenv命令
使用printenv命令可以显示当前所有的环境变量及其对应的值。例如,执行以下命令可以查看当前所有的环境变量:
Shellprintenvenv命令
env命令也可以用来查看当前所有的环境变量及其对应的值。例如,执行以下命令可以查看当前所有的环境变量:
Shellenvecho $变量名命令
使用echo $变量名命令可以查看指定环境变量的值。例如,执行以下命令可以查看PATH环境变量的值:
Shellecho $PATH在上述命令中,$符号用于获取变量的值。
set命令
set命令可以显示当前所有的环境变量和用户定义的shell变量。执行以下命令可以查看当前所有的变量:
Shellset这些命令可以帮助你查看当前的环境变量,并根据需要进行相应的配置和修改。
环境变量的配置 #Linux中环境变量的配置通常有两种方式:临时设置和永久设置。下面是它们的具体配置方法:
临时设置环境变量 #可以通过以下命令在当前终端中临时设置环境变量:
Shellexport 变量名=变量值例如,要在当前终端中设置GOPATH变量,可以执行以下命令:
Shellexport GOPATH=/path/to/your/gopath永久设置环境变量 #修改shell配置文件(影响范围:当前用户)
提示
如果你使用的Shell不是bash,那么你需要编辑相应的配置文件,例如,如果你使用的是zsh,那么你需要编辑~/.zshrc文件。
要永久设置环境变量,需要编辑用户主目录下的.bashrc或.bash_profile文件。
.bashrc文件包含了Bash shell运行时需要加载的命令,比如命令别名、环境变量设置、设置PS1提示符等。每次新打开一个终端窗口,.bashrc文件都会被读取并执行其中的命令。
.bash_profile文件在用户登录时被读取,它一般包含用户登录时需要执行的命令,比如设置PATH环境变量、定义shell函数等。.bash_profile只会在用户登录时被读取一次,所以如果需要立即生效,则需要手动执行source .bash_profile或者重新登录。
编辑.bashrc文件:
Shellvim ~/.bashrc在文件末尾添加以下内容,其中变量名为你要设置的环境变量的名称,变量值为你要设置的环境变量的值:
Shellexport 变量名=变量值保存并退出文件后,执行以下命令使配置生效:
Shellsource ~/.bashrc修改desktop文件(影响范围:使用desktop文件启动的应用程序) 你可以通过修改/usr/share/applications目录下的desktop文件来永久设置环境变量,具体参照XDG桌面文件规范。
修改图形环境配置文件 (影响范围:图形会话) 你可以通过修改图形环境的配置文件来永久设置环境变量,比如deepin使用的x11环境你可以更改/etc/X11/Xsession.d/00deepin文件来实现配置
警告
请谨慎修改图形环境的配置文件,因为它们会影响到整个图形会话。除非你知道你在做什么,否则不要修改这些文件。
Systemd 环境变量配置文件(影响范围:所有用户或者某个用户) systemd 用户实例不会继承类似 .bashrc 中定义的 环境变量。systemd 用户实例有三种设置环境变量的方式:
对于有 $HOME 目录的用户,可以在 ~/.config/environment.d/ 目录中新建一个".conf"文件,然后在其中写入格式为NAME=VAL这样的行。这些设置只对指定用户的用户单元有效 。