Linux(基于《Linux命令行与shell脚本编程大全》学习笔记)6使用Linux环境变量环境变量的定义bashshell使用了一个叫做环境变量的特性来存储shell会话的信息和工作环境有关的信息,环境变量分为两类:全局变量局部变量全局环境变量全局环境变量对shell会话和生成的所有子shell都是可见的。局部变量只对创建它们的shell可见。查看环境变量printenv或env命令可以查看全局环境变量要显示个别环境变量的值,只能使用printenv命令,例如:printenvHOME我们比较常用的命令是:echo$HOME也可以查看其中的内容环境变量文件夹的ls$HOME全局环境变量在所有shell中有效本地环境变量本地变量只能在当前bash中看到使用set命令查看所有环境变量,包括全局变量、局部变量、用户自定义variables,并按字母顺序设置环境变量设置一个用户自定义的环境变量Example设置一个自定义的环境变量,名称为tttttt=hello当我们使用echo$ttt时,我们会得到hello所有环境变量名称都使用大写字母,这是标准的bashshell的实践。如果是局部变量或者自己创建的shell脚本,请使用小写字母。变量名称区分大小写。设置全局环境变量全局环境变量是先设置局部,然后将局部环境变量导出为全局环境变量。export:exportttt将其设置为全局环境变量。删除环境变量unsetttt删除涉及的环境中的环境变量。在变量名中何时使用$何时不使用$令人困惑。只要记住一件事:如果你想使用变量,使用$;如果你想操作变量,不要使用$.此规则的一个例外是使用printenv显示变量的值时。设置PATH环境变量PATH环境变量是我们经常用来设置PATH环境变量的环境变量命令PATH=$PATH:/home/user/tttPATH环境变量是用冒号区分的,所以新建的PATH变量就是原来的PATH($PATH)加上一个新的PATH变量(/home/user/ttt),中间用冒号隔开注意,现在设置的路径变量是临时的,在当前shell退出或系统重启后会失效。环境变量的持久化现在知道了各种shell进程和它们对应的环境文件,找到永久环境变量就容易多了。您还可以使用这些文件来创建您自己的永久全局或局部变量。对于全局环境变量(Linux系统的所有用户都需要使用的变量),将新的或修改的变量设置放在/etc/profile文件中可能更可取,但这不是一个好主意。如果你升级你的发行版,这个文件也会被更新,你所有的自定义变量设置都会消失。最好在/etc/profile.d目录下创建一个以.sh结尾的文件。将所有新的或修改的全局环境变量设置放入此文件中。在大多数发行版中,存储个人用户永久bashshell变量的地方是$HOME/.bashrc文件。这些都不重要,基本用不到。下一章直接练习shell编程,中间部分不看了,西巴。
