本文主要介绍Linux环境变量配置的相关信息。通过示例代码进行了非常详细的介绍,对大家学习或使用Linux有一定的参考价值。和有需要的朋友一起学习吧。
Linux环境变量配置
当您自定义软件安装时,通常需要配置环境变量。以下是配置环境变量的各种方法。
以下所有示例的环境解释如下:
系统:Ubuntu 14.0
用户名:uusama
您需要配置MySQL环境变量path: /home/uusama/mysql/bin
Linux读取环境变量
读取环境变量的方法:
export命令显示当前系统定义的所有环境变量。
echo $PATH命令输出当前PATH环境变量的值。
这两个命令的效果如下
uusama@ubuntu:~$ export
declare -x HOME='/home/uusama '
声明-x LANG='en_US。UTF八号
declare -x LANGUAGE='en_US:'
declare-x less close='/usr/bin/less pipe % s % s '
declare-x less open=' |/usr/bin/less pipe % s '
declare -x LOGNAME='uusama '
declare-x MAIL='/var/MAIL/uu sama '
declare-x PATH='/home/uu sama/bin:/home/uu sama/。'本地/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin '
declare -x SSH_TTY='/dev/pts/0 '
declare -x TERM='xterm '
declare -x USER='uusama '
uusama@ubuntu:~$ echo $PATH
/home/uusama/bin:/home/uusama/。local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PATH变量定义了正在运行的命令的搜索路径,该路径由冒号分成不同的路径:使用导出定义时,可以添加也可以不添加双引号。
Linux环境变量配置方法1:导出路径
使用export命令直接修改PATH的值,并配置MySQL进入环境变量的方法:
导出路径=/home/uusama/mysql/bin:$PATH
#或者将路径放在前面
导出路径=$PATH:/home/uusama/mysql/bin
注意事项:
生效时间:立即生效。
有效期:当前终端有效,窗口关闭后无效。
有效范围:仅对当前用户有效。
不要忘记将原始配置,即$PATH部分添加到配置的环境变量中,以避免覆盖原始配置。
Linux环境变量配置方法二:vim ~/.bashrc
通过修改~/来配置它。用户目录中的bashrc文件:
vim ~/。bashrc
#在最后一行添加
导出路径=$PATH:/home/uusama/mysql/bin
注意事项:
生效时间:同一用户打开新终端,或者手动源~/时生效。巴沙尔将生效。
有效期:永久有效
有效范围:仅对当前用户有效。
如果后续的环境变量加载文件覆盖了路径定义,它可能不会生效。
Linux环境变量配置方法三:vim ~/.bash_profile
修改~/。bashrc文件类似于在文件末尾添加一个新路径:
vim ~/。bash_profile
#在最后一行添加
导出路径=$PATH:/home/uusama/mysql/bin
注意事项:
生效时间:同一用户打开新终端时生效,或者手动源~/。bash_profile生效。
有效期:永久有效
有效范围:仅对当前用户有效。
如果没有~/。bash_profile文件,您可以编辑它或创建一个新文件。
Linux环境变量配置方法四:vim /etc/bashrc
方法是修改系统配置,这需要管理员权限(如root)或对文件的写权限:
#如果/etc/bashrc文件不可编辑,则需要将其修改为可编辑
chmod -v u w /etc/bashrc
vim /etc/bashrc
#在最后一行添加
导出路径=$PATH:/home/uusama/mysql/bin
注意事项:
生效时间:新开通的终端生效,或者手动源/etc/bashrc生效。
有效期:永久有效
有效范围:对所有用户有效。
Linux环境变量配置方法五:vim /etc/profile
这种方法需要管理员权限或对文件的写权限来修改系统配置,类似于vim /etc/bashrc:
#如果/etc/profile文件不可编辑,则需要将其修改为可编辑。
chmod -v u w /etc/profile
vim /etc/profile
#在最后一行添加
导出路径=$PATH:/home/uusama/mysql/bin
注意事项:
生效时间:新开通的终端生效,或者手动源/etc/profile生效。
有效期:永久有效
有效范围:对所有用户有效。
Linux环境变量配置方法六:vim /etc/environment
方法是修改系统环境配置文件,这需要管理员权限或对文件的写权限:
#如果/etc/bashrc文件不可编辑,则需要将其修改为可编辑
chmod-v u w/etc/环境
vim /etc/profile
#在最后一行添加
导出路径=$PATH:/home/uusama/mysql/bin
注意事项:
生效时间:新开通的终端生效,或者手动源/etc/环境生效。
有效期:永久有效
有效范围:对所有用户有效。
Linux环境变量加载原理解析
上面列出了环境变量的各种配置方法,那么Linux是如何加载这些配置的呢?它是按什么顺序装载的?
的特定加载顺序将导致同名环境变量的定义被覆盖或无效。
环境变量的分类
环境变量可以简单的分为用户自定义环境变量和系统级环境变量。
用户级环境变量定义文件:~/。bashrc,~/。bash_profile
系统级环境变量定义文件:/etc/bashrc、/etc/bash_profile、/etc/environment
此外,在用户环境变量中,系统将首先读取~/。bash_profile文件,然后读取~/。bash_login如果没有这样的文件,那么读取~/。profile然后读~/。根据这些文件的内容。
测试Linux环境变量加载顺序的方法
为了测试环境变量在不同文件中的加载顺序,我们在每个环境变量定义文件的第一行定义了同一个环境变量UU_ORDER,这个变量的值是它自己的值连接到当前文件名。
要修改的文件如下:
/etc/环境
/etc/profile
/etc/profile.d/test.sh,新建一个文件,没有文件夹可以跳过。
/etc/bashrc或/etc/bash.bashrc。
~/.bash_profile,或者~/。轮廓
~/.bashrc
将以下代码添加到每个文件的第一行,并将冒号后的内容相应地修改为当前文件的绝对文件名。
export UU_ORDER='$UU_ORDER:~/。' bash_profile '
修改后保存,打开新窗口,然后回显$UU_ORDER观察变量的值:
uusama@ubuntu:~$ echo $UU_ORDER
$ UU _ ORDER:/etc/environment:/etc/profile:/etc/bash . bashrc:/etc/profile . d/test . sh:~/。个人资料:~/。bashrc
可以推断出Linux加载环境变量的顺序如下:
/etc/环境
/etc/profile
/etc/bash.bashrc
/etc/profile.d/test.sh
~/.轮廓
~/.bashrc
Linux环境变量文件加载详解
从上面的测试可以很容易地得出结论,Linux加载环境变量的顺序如下:
系统环境变量-用户定义的环境变量
/etc/environment-/etc/profile-~/。轮廓
打开/etc/profile文件,您会发现/etc/bash.bashrc文件将被加载到这个文件的代码中。然后检查。sh文件并加载它。
# /etc/profile:系统范围。Bourne shell的配置文件(sh(1))
#和Bourne兼容的shell(bash(1),ksh(1),ash(1),).
if[' $ PS1 '];然后
if [ '$BASH' ] [ '$BASH '!='/bin/sh '];然后
#文件bash.bashrc已经设置了默认的PS1。
# PS1='\h:\w\$ '
if[-f/etc/bash . bashrc];然后。/etc/bash.bashrc
船方不负担装货费用
其他
if[' ` id-u `'-eq 0];然后
PS1='# '
其他
PS1='$ '
船方不负担装货费用
船方不负担装货费用
船方不负担装货费用
if[-d/etc/profile . d];然后
对于/etc/profile.d/*中的I。sh;做
if[-r $ I];然后。$i
船方不负担装货费用
完成的
未设置I
船方不负担装货费用
其次,打开~/。配置文件,您会发现~/。bashrc文件被加载到这个文件中。
#如果运行bash
if[-n ' $ BASH _ VERSION '];然后
#包含。如果存在的话
if [ -f '$HOME/。bashrc’];然后。$HOME/。巴什尔克
船方不负担装货费用
船方不负担装货费用
#设置路径,使其包含用户的私有bin目录
PATH='$HOME/bin:$HOME/。“本地/bin:$PATH”
从~/中不难找到代码。配置文件。/。当用户登录时,profile文件只被读取一次,而/。每次运行Shell脚本时,都会读取一次bashrc。
一些小技巧
可以自定义一个环境变量文件,比如在某个项目下定义uusama.profile,使用export在这个文件中定义一系列变量,然后在~/后面加上:sourc uusama.profile。profile文件,这样您就可以在每次登录时使用自己在Shell脚本中定义的一系列变量。
还可以使用alias命令定义一些命令的别名,比如alias rm='rm -i '(需要双引号),并将这段代码添加到~/中。profile,这样每次使用rm命令,就相当于使用rm -i命令,非常方便。
总结
这就是本文的全部内容。希望这篇文章的内容对你的学习或工作有一定的参考价值。谢谢你的支持。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。