什么是环境变量
- 全局环境变量不仅对shell会话可见,对所有shell创建的子进程也可见。局部变量则只对创建它们的shell可见。可以使用命令
printenv
查看全局变量的。 - 在引用环境变量时,必须在环境变量的名称前放一个$符号,如
echo $home
set
命令会显示为某个特定进程设置的所有环境变量。 当然,也包括全局环境变量。
设置环境变量
- 在环境变量名称、等号和值之间没有空格,这一点非常重要。如果你在赋值表达式中放了空格,bash shell会把值当成一个单独的命令
test=testing
echo $test
test='testing a long string'
echo $test
- 全局环境变量可以通过
export
来完成,全局环境变量在进程创建的所有子进程中都是可见的
test='testing a long string'
echo $test
export test
bash
echo $test
echo $test
unset test
echo $test
- 如果在子进程中删除了一个全局环境变量,它只对子进程有效
设置PATH环境变量
PATH=$PATH:/home/usr/test
#添加/home/usr/test到PATH环境变量
定位系统环境变量
- 当登录Linux系统时,bash shell会作为登录shell启动。登录shell会从以下4个不同的文件里顺序读取:
- /etc/profile
- $HOME/.bash_profile
- $HOME/.bash_login
- $HOME/.profile
- 如果bash是作为交互式shell启动的(比如你在命令行提示符下敲入bash启动),它不会去访问/etc/profile文件,而回去用户的HOME目录检查.bashrc是否存在。
使用命令别名
alias -p
#查看已有的命令别名alias li='ls -il'
#创建命令别名