版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Jerry_1126/article/details/83832551
题目: 下面的语句z的值为多少,为什么?
x=100
y=x
z=${!y}
echo ${z}
要理解上面的语句,关键在于${!y}
! 在shell是执行的意思
!command 代表执行后面的命令
比如说:
!pwd 则代表执行后面的pwd命令
!18 则代表执行history中第18条命令
!! 则代表执行history中最后一条命令
!ls* 则代表执行ls开头的命令
有了上面的基础,那么!y就好理解了: 就是执行y=x这条命令,x的值就赋值给了y
所以z=${!y}, 就等价于z=${x},所以z的值就为100