轻松搞定Linux环境变量

引言

我一直以来都在用Ubuntu系统,每当我装一些软件的时候,我都会本能的Google去看怎么配置这些烦人的环境变量。有的时候,还会出现很多的错误。因为我不明白到底在配置什么,我只是本能的Copy到我的一些文件中,它就可以工作了,但是我不明白其原理,所以出错了以后我会花很多时间来重新Google,甚至把先前所有的东西都删掉,因为我也不知道具体哪里出错了。因此,我决定学习一下,把这个东西搞定。

环境变量

我为环境变量画了一张思维导图,我会对照上面的序号解释并例举一些例子。

环境变量

1-5 设置环境变量

设置局部环境变量:用等号给环境变量赋值,值可以是数字或字符串。

$ user=xlinsist

## 设置含有空格的字符串时,必须加单引号
$ dog='i love xlinsist blog'

设置全局环境变量:用等号给环境变量赋值,值可以是数字或字符串。

## 设置过程与局部变量类似,只不过我们需要加export命令
$ dog='i love xlinsist blog'
$ export dog
##上面的dog就为全局变量了

警告:在环境变量名称、等号和值之间没有空格。

3-7 设置环境变量

显示环境变量非常简单,无论是局部环境变量和全局环境变量都用这种方法就行。但是,这会涉及到可见性的问题,现在先不用管它,下面我会解释的。

## 显示上面设置的dog环境变量
$ echo $dog

4-8 环境变量的可见性

全局环境变量可以在定义它们的进程创建的子进程中使用。而局部环境变量只能在定义它们的进程中使用。

环境变量的可见性

如果我将上面的human设置为全局环境变量,那么启动的新bash shell中就会存在human环境变量。

2-6 删除环境变量

## 删除环境变量
$ unset human

当我们在删除全局环境变量时,如果是在子进程中删除了环境变量,那么父进程中的全局环境变量依然有效。

启动文件

当我安装Java的时候,我总会把bin目录写入到几个文件当中,现在,让我们看一看这些文件到底起什么样的作用。

当我们在登录Linux系统启动bash shell时,默认情况下bash在几个文件中查找命令。这些文件称作启动文件。bash shell会依次处理下面几个文件:

  1. /etc/profile
  2. $HOME/.bash_profile
  3. $HOME/.bash_login
  4. $HOME/.profile

系统上的每个用户在登录时都会执行/etc/profile这个文件,你可以打开你自己系统上的这个文件,这个文件中会执行一些脚本并且导入一些全局环境变量供我们使用,例如PATH,你可以自己显示一下PATH环境变量。

由于我们现在的操作系统都集成了桌面环境,你可以认为输入你的开机密码后就进入bash shell从而会执行/etc/profile这个文件。如果你觉得没什么不同的话,你可以Ctrl + Alt + F1,就会进入一个bash shell界面,你这时候可以输入用户名和密码登录到你的系统。我的操作系统Ubuntu 14.04的,具体的快捷键可能不同。

大多数的Linux发行版本可能用上面剩下的三个文件中的一个,我的Ubuntu系统中用的是$HOME/.profile。这些文件的目的只不过是为每个用户定制自己需求。和/etc/profile没什么不同。

默认的环境变量

Linux中常用的一些变量

Linux中常用的一些变量

图片来源:http://www.cyberciti.biz/faq/linux-list-all-environment-variables-env-command/

上面的这些变量,也就是当你登录系统时,启动文件已经帮你加载好的变量。

这里我要说一下,PATH变量很重要。它值的含义是命令的搜索路径。每个路径用冒号分开,shell从这些路径中寻找可执行的命令。比如,我把java的bin目录赋值给PATH环境变量,我就可以在任何目录中执行Java命令了。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值