Linux之环境变量

    Linux系统中的环境变量是用来指定系统运行环境的一些参数,比如我们使用命令的路径。通过环境变量来帮助Linux系统构建起为用户服务的工作环境,需要数百个变量来协同完成的。我们可以用env命令查看linux系统中所有的环境变量。

分类

    根据环境变量的生命周期我们可以将其分为永久性变量和临时性变量,根据用户等级的不同又可以将其分为系统级变量和用户级变量。

对所有用户生效的永久性变量(系统级)

    这类变量对系统内的所有用户都生效,所有用户都可以使用这类变量。作用范围是整个系统。 
    设置方式: vim在/etc/profile文件中添加我们想要的环境变量。 
    当然,这个文件只有在root(超级用户)下才能修改。利用vim打开/etc/ profile文件,用export指令添加环境变量。 

【注意】:添加完成后新的环境变量不会立即生效,除非你调用source /etc/profile 该文件才会生效。否则只能在下次重进此用户时才能生效。

对单一用户生效的永久性变量(用户级)

    该类环境变量只对当前的用户永久生效。也就是说假如用户A设置了此类环境变量,这个环境变量只有A可以使用。而对于其他的B,C,D,E….用户等等,这个变量是不存在的

    设置方法:在用户主目录”~”下的隐藏文件 “.bash_profile”中添加自己想要的环境变量。 
    查看隐藏文件: ls -a或ls -al  
    利用vim打开文件,利用export添加环境变量。与上相同。同样注意,添加完成后新的环境变量不会立即生效,除非你调用source ./.bash_profile 该文件才会生效。否则只能在下次重进此用户时才能生效

    可以看到用户主目录有两个文件,.bashrc和.bash_profile。原则上来说设置此类环境变量时在这两个文件任意一个里面添加都是可以的。二者设置大致相同。就是.bash_profile文件只会在用户登录的时候读取一次,而.bashrc在每次打开终端进行一次新的会话时都会读取。

临时有效的环境变量(只对当前shell有效

    此类环境变量只对当前的shell有效。当我们退出登录或者关闭终端再重新打开时,这个环境变量就会消失。是临时的。

    设置方法:直接使用export指令添加。 export 新环境变量名=内容

设置环境变量常用的几个指令

echo

查看显示环境变量,使用时要加上符号$,例:echo $PATH

export

设置新的环境变量 
export 新环境变量名=内容  ,例:export NAME=”LZHF”

修改环境变量

修改环境变量没有指令,可以直接使用环境变量名进行修改。 
例:NAME=”LZHF1122”

env

查看所有环境变量

unset

删除一个环境变量 ,例 unset NAME

常用的几个环境变量(一般都为大写)

PATH

指定命令的搜索路径。通过设置环境变量PATH可以让我们运行程序或指令更加方便。 
echo $PATH 查看环境变量PATH。 

每一个冒号都是一个路径,这些搜索路径都是一些可以找到可执行程序的目录列表。当我们输入一个指令时,shell会先检查命令是否是内部命令,不是的话会再检查这个命令是否是一个应用程序。然后shell会试着从这些搜索路径,即PATH中寻找这些应用程序。如果shell在这些路径目录里没有找到可执行文件。则会报错。若找到,shell内部命令或应用程序将被分解为系统调用并传给Linux内核。

举个例子: 
现在有一个c程序test.c通过gcc编译生成的可执行文件a.out。我们使用export指令,将a.out的路径添加到搜索路径当中,export PATH=$PATH:路径 
我们就可以使用a.out直接执行程序。

HOME

指定用户的主工作目录,即为用户登录到Linux系统中时的默认目录,即“~”。

HISTSIZE

指保存历史命令记录的条数。我们输入的指令都会被系统保存下来,这个环境变量记录的就是保持指令的条数。一般为1000。 

这些历史指令都被保存在用户工作主目录“~”下的隐藏文件.bash_history中。 

我们可以通过指令history来查看。 

LOGNAME

指当前用户的登录名

HOSTNAME

指主机的名称

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值