Linux环境变量设置方法


危机打钥匙
危机打钥匙 2023-11-08 13:35:47 62853
分类专栏: 资讯
Linux是一个多用户的操作系统。多用户意味着每个用户登录系统后,都有自己专用的运行环境。
而这个环境是由一组变量所定义,这组变量被称为环境变量。用户可以对自己的环境变量进行修改以达到对环境的要求。

设置环境变量的方法

1.对所有用户生效的永久性变量
这类变量对系统内的所有用户都生效,所有用户都可以使用这类变量。作用范围是整个系统。
此文件只在root下才能修改。
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib
添加完成后新的环境变量不会立即生效,立即生效需要运行 source /etc/profile ,否则只能在下次重进此用户时才能生效。
2.对单一用户生效的永久性变量
在用户目录下的.bash_profile 文件中添加变量,该文件是隐藏文件,可使用ll -a查看:
图片
$ whoami 
rethink

$ vi /home/rethink/.bash_profile
export CLASSPATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib 

$ source /home/rethink/.bash_profile
在上图中用红框框住了两个文件:.bashrc 和.bash_profile ,原则上讲设置此类环境变量时在这两个文件任意一个里面添加都是可以的,这两个文件的区别为:.bash_profile是交互式login方式进入bash shell运行,.bashrc是交互式non-login方式进入bash shell运行。
可以理解为.bash_profile文件只会在用户登录的时候读取一次,而.bashrc在每次打开终端进行一次新的会话时都会读取。
临时有效的环境变量(只针对当前shell有效)
此类环境变量只对当前的shell有效。当我们退出登录或者关闭终端再重新打开时,这个环境变量就会消失。是临时的。
设置方法:命令行下直接使用[export 变量名=变量值] 定义变量。
3.设置环境变量常用命令
echo 用于打印显示环境变量,如:echo $NAME;
export 用于设置新的环境变量,如:export NAME='rethink';
更新环境变量 更新环境变量直接重新赋值即可:NAME='test'   (注意:变量名前不需要加$);
env 显示当前用户的变量;
set 显示当前shell变量,shell变量包含用户变量;
unset 删除一个环境变量,如:unset NAME;
readonly 设置环境变量只读,如:readonly NAME  ,只读变量unset无效。

常用环境变量

PATH
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
路径之间用冒号分隔,这些路径都是一些可以找到可执行程序的目录列表。当我们输入一个指令时,shell会先检查命令是否是系统内部命令,如果不是则会再去检查此命令是否是一个应用程序,shell会试着从PATH中寻找这些应用程序。
如果shell在这些路径目录里没有找到可执行文件,就会报错;若找到,系统将调用执行应用程序。通过设置PATH ,可以让我们运行程序或指令更加方便。
将某个目录路径加入到PATH中,可以这样写:
$ pwd
/root/docker/httpd
$ export PATH=$PATH:$PWD
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/docker/httpd
`可以看到在PATH后面已经加上了我们当前所处目录的路径`
HOME
用户的主工作目录,即为用户登录到Linux系统中时的默认目录。
$ whoami
rethink
$ echo $HOME
/home/rethink
HISTSIZE
保存历史命令的条数。我们输入的指令都会被系统保存下来,这个环境变量记录的就是保持指令的条数。一般为1000。
$ echo $HISTSIZE
1000
$ HISTSIZE=1001
$ echo $HISTSIZE
1001
历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取我们可以通过history命令来查看。可以使用符号 ! 执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2。
$ history 5
   59  ls
   60  who
   61  history | head -n 5
   62  who am i
   63  history 5
$ !62
who am i
root     pts/0        2018-04-04 11:00 (101.81.92.18)
LOGNAME
当前用户登录名。
$ echo $LOGNAME
rethink
HOSTNAME 主机名称。
$ echo $HOSTNAME
JDu4e00u53f7
SHELL
当前用户使用的shell种类。
$ echo $SHELL
/bin/bash
来源:
https://www.zhangjunbk.com/article/590

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=28188
赞同 0
评论 0 条
危机打钥匙L0
粉丝 0 发表 7 + 关注 私信
上周热门
银河麒麟添加网络打印机时,出现“client-error-not-possible”错误提示  1323
银河麒麟打印带有图像的文档时出错  1236
银河麒麟添加打印机时,出现“server-error-internal-error”  1023
统信桌面专业版【如何查询系统安装时间】  951
统信操作系统各版本介绍  944
统信桌面专业版【全盘安装UOS系统】介绍  903
麒麟系统也能完整体验微信啦!  889
统信【启动盘制作工具】使用介绍  499
统信桌面专业版【一个U盘做多个系统启动盘】的方法  441
信刻全自动档案蓝光光盘检测一体机  386
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

添加我为好友,拉您入交流群!

请使用微信扫一扫!