老铁们,大家好,相信还有很多朋友对于linux设置环境变量(linux设置环境变量对所有用户生效)和linux设置环境变量(linux设置环境变量对所有用户生效)的相关问题不太懂,没关系,今天就由我来为大家分享分享linux设置环境变量(linux设置环境变量对所有用户生效)以及linux设置环境变量(linux设置环境变量对所有用户生效)的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
linux设置环境变量的两个方法与区别
在 Linux 中设置环境变量有多种方法,以下是其中两种常用的方法:
一般情况下是临时生效,重启后失效,可通过方法二达到永久有效。
export 临时设置,常用于编译安装东西用
在命令行中设置环境变量可以使用 export 命令在命令行中设置环境变量,在 Linux 中,export 是一个用于设置环境变量的命令。它可以将一个变量或函数(以及它们的值)添加到当前 shell 环境中,使得该变量或函数在当前 shell 会话中可以被识别和使用
例如:
export MY_VAR=/path/to/my/folder
其中,MY_VAR 是环境变量名,/path/to/my/folder 是环境变量值。设置完成后,可以使用 echo 命令检查环境变量是否设置成功:
echo $MY_VAR写入.bashrc,使重启自动加载达到永久有效
在 .bashrc 或 .bash_profile 文件中设置环境变量
可以在用户主目录下的 .bashrc 或 .bash_profile 文件中设置环境变量,例如:
export MY_VAR=/path/to/my/folder
在 .bashrc 或 .bash_profile 文件中设置的环境变量会在用户登录时自动加载。设置完成后,可以使用 source 命令重新加载 .bashrc 或 .bash_profile 文件:
source ~/.bashrc 或者 source ~/.bash_profile
以上是设置环境变量的两种常用方法,不同的方法适用于不同的情况,请根据实际情况选择合适的方法。
Linux系统环境变量配置指引
摘要:环境变量是在操作系统中定义的一些变量,负责保存系统的一些基本信息。这些信息可以是路径、命令别名、用户配置等。环境变量被用于告诉系统在运行程序或命令时需要查找的路径、库和其他系统资源的位置。了解Linux环境变量的作用可以更好地配置和管理Linux系统,提高系统的可用性和安全性。
在Linux系统中,环境变量都是以字符串的形式存储在操作系统内存中的。Linux系统将这些字符串称为环境变量字符串。环境变量字符串是由变量名和值组成的键值对,用“=”连接,多个环境变量的变量之间用“:”隔开。可以使用export命令来设置环境变量,使用env命令和echo命令查看和调试环境变量。
本文主要介绍Linux系统中环境变量的查看及设置方法,详细内容请参考下文。
一、Linux系统
1、登录Linux系统
2、查看当前系统变量
指向指令# export
二、什么是环境变量
1、环境变量简介
用来存储关于shell会话和工作环境的信息,就叫做环境变量。一般情况下,按照生命周期来分,Linux环境变量可以分为永久变量和临时变量两类。
(1)、永久变量:需要用户修改相关的配置文件,变量永久生效。
(2)、临时变量:用户利用export命令,在当前终端下声明环境变量,关闭Shell终端失效。
2、查看环境变量
(1)、使用env查看所有环境变量
执行指令# env或者printenv
(2)、使用echo命令查看单个环境变量
执行指令# echo $PATH
备注:常用环境变量
序号
变量名
变量作用
1
PATH
指定命令的搜索路径
2
HOME
指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录)
3
HISTSIZE
保存历史命令记录的条数
4
LOGNAME
当前用户的登录名
5
HOSTNAME
主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。
6
SHELL
当前用户用的是哪种Shell
7
LANG/LANGUGE
和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。
8
当前用户的邮件存放目录
9
PS1
命令基本提示符,对于root用户是#,对于普通用户是$。
10
PS2
附属提示符,默认是“>”。
(3)、使用set查看所有本地定义的环境变量
(4)、使用unset删除指定的环境变量
说明:set命令可以设置某个环境变量的值。清除环境变量的值用unset命令。如果未指定值,则该变量值将被设为NULL。
示例如下:
export ABC=”Hello World” #增加一个环境变量ABC
env | grep ABC #此命令有输入,证明环境变量ABC已经存在了
unset ABC #删除环境变量ABC
$ env|grep ABC #此命令没有输出,证明环境变量ABC已经删除
3、设置环境变量
(1)、在/etc/profile文件中添加变量
说明:使用vim工具在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。
比例,编辑/etc/profile文件,添加CLASSPATH变量
执行指令# vim /etc/profile
在该文件的末尾添加以下语句
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
备注:注:修改文件保存后要想马上生效还要运行# source /etc/profile不然只能在下次重新登录此用户时生效。
(2)、在用户目录下的.bash_profile文件中添加变量
说明:使用vim工具在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。
比如编辑user用户目录(/home/user)下的.bash_profile
执行指令# vim /home/user/.bash_profile
在该文件的末尾添加以下语句
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
备注:修改文件后要想马上生效还要运行$ source /home/user/.bash_profile不然只能在下次重新登录此用户时生效。
(3)、直接运行export命令定义变量
说明:在shell的命令行下直接使用[export 变量名=变量值] 定义变量,比如export ABC=”Hello World” #增加一个环境变量ABC。
该变量只在当前的shell或其子shell下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。
三、怎么加载环境变量
1、环境变量的分类
说明:本节介绍环境变量的加载顺序,涉及环境变量的另一个分类标准,按系统加载的先后顺序,可以将环境变量简单的划分为系统级别环境变量和用户自定义环境变量两类。
(1)、系统级别环境变量定义文件:/etc/bashrc和/etc/profile
(2)、用户级别环境变量定义文件:~/.bashrc和~/.bash_profile
备注:在用户环境变量中,系统会首先读取~/.bash_profile文件,如果没有该文件则读取~/.bashrc。
2、环境变量加载顺序测试
(1)、为了测试各个不同文件的环境变量加载顺序,在每个环境变量定义文件中的第一行都定义相同的环境变量VAR_ORDER,该变量的值为本身的值连接上当前文件名称。
在每个文件中的第一行都加上下面这句代码,并相应的把冒号后的内容修改为当前文件的绝对文件名。
export VAR_ORDER=”$VAR_ORDER:~/.bash_profile”
需要修改的文件如下:
/etc/environment
/etc/profile
/etc/bashrc
~/.bash_profile
~/.bashrc
(2)、修改完之后保存,新开一个窗口,然后echo $VAR_ORDER观察变量的值。
可以推测出Linux加载环境变量的顺序如下:
/etc/environment
/etc/profile
/etc/bashrc
~/.bash_profile
~/.bashrc
3、环境变量加载顺序
说明:由上面的测试可容易得出Linux加载环境变量的顺序如下:
系统环境变量 -> 用户自定义环境变量
/etc/environment -> /etc/profile -> ~/.bash_profile
4、环境变量加载技巧
(1)、可以根据项目需要自定义一个环境变量文件,比如在某个项目下定义gzprg.profile,并在这个文件中使用export定义一系列变量,然后在~/.bash_profile文件后面加上:source gzprg.profile变量,这样每次登陆都可以在Shell脚本中使用自己定义的一系列变量。
(2)、可以使用alias别名命令定义一些命令的别名,比如alias rm=”rm -i”(双引号必须),并把这个代码加入到~/.bash_profile中,这样每次使用rm命令的时候,都相当于使用rm -i命令了。
关于linux设置环境变量(linux设置环境变量对所有用户生效)和linux设置环境变量(linux设置环境变量对所有用户生效)的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。