Linux Shell 变量的类型
自定义变量类型
定义变量: 变量名=变量值 变量名必须以字母或者下划线开头,区分大小写
引用变量:
变
量
名
或
者
变量名 或者
变量名或者(变量名)
查看变量: echo $ 变量名 set(包括自定义变量和环境变量)
取消变量: unset环境变量
作用范围: 仅在当前shell中有效
[root@localhost ~]# vartest=123456
[root@localhost ~]# echo $vartest
123456
[root@localhost ~]# echo ${vartest} //在当前shell中起作用
123456
[root@localhost ~]# bash
[root@localhost ~]# echo $vartest //在子shell中不起作用
[root@localhost ~]# exit
exit
[root@localhost ~]# echo ${vartest}
123456
环境变量
定义环境变量: 方法一 : export back_dir2=/home/test
方法二 : export back_dir1 将自定义变量转换为环境变量
引用环境变量:
变
量
名
或
者
变量名 或者
变量名或者(变量名)
查看环境变量: echo $ 变量名
取消环境变量:unset 变量名
变量作用范围:在当前shell和子shell有效
[root@localhost ~]# export back_dir=/home/backup
[root@localhost ~]# test_dir=/opt
[root@localhost ~]# export test_dir
[root@localhost ~]# echo $back_dir
/home/backup
[root@localhost ~]# echo $test_dir
/opt
[root@localhost ~]# env
XDG_SESSION_ID=8
HOSTNAME=localhost.localdomain
SELINUX_ROLE_REQUESTED=
HOME=/root
back_dir=/home/backup
[root@localhost ~]# unset back_dir //取消环境变量
[root@localhost ~]# unset test_dir
[root@localhost ~]# echo $test_dir //环境变量已取消 无输出
[root@localhost ~]# echo $back_dir
[root@localhost ~]#