变量的定义
在Shell中,通常情况下用户可以直接使用变量,而毋需先进行定义,当用户第一次使用某个变量名
时,实际上就同时定义了这个变量,在变量的作用域内,用户都可以使用该变量。
引用变量:
变量名或者
变量名 或者
变量名或者{变量名}
查看变量:echo $变量名,set(可查看所有变量:包括自定义变量和环境变量),env显示全局变量,
declare输出所有的变量、函数、整数和已经导出的变量。
取消变量:unset 变量名
作用范围:仅在当前shell中有效
**
$@ 和 $* 的区别
**
$*| 以"参数1 参数2 参数3…"的形式返回所有参数的值 |
$@| 以“参数1”“参数2”“参数3”…的形式返回所有的值 |
$@ 和 $*的区别示例
[root@localhost test]# set -- "i have" a cat #利用set命令设置位置参数
[root@localhost test]# echo $#
3
[root@localhost test]# echo $*
i have a cat
[root@localhost test]# echo $@
i have a cat
[root@localhost test]# for i in $*;do echo $i;done
i
have
a
cat
[root@localhost test]# for i in $@;do echo $i; done
i
have
a
cat
[root@localhost test]# for i in "$*";do echo $i;done
i have a cat
[root@localhost test]# for i in "$@";do echo $i;done
i have
a
cat
[root@localhost test]# shift #使用该指令可将位置参数左移一位
[root@localhost test]# echo $1
a
[root@localhost test]# shift
[root@localhost test]# echo $1
cat