问答详情
源自:6-1 for循环

Linux for循环

cd /root/test

for i in $(ls *.tar.gz *.gz)      

 do          

 tar -zxf $i  

   done

为什么(ls *.tar.gz*.gz)前面要加$,不加行不行

提问者:qq_爱上你_0 2017-05-13 16:11

个回答

  • 慕粉1720382552
    2017-07-14 00:08:32

    变量名是y,引用变量的值是$y

    $()是特殊用法,是调用系统命令,和反引号的作用一样的。 y = $( ls *.tar.gz *.gz),是先执行ls命令,得到的结果赋值给变量y。

  • 不会说话的鱼
    2017-05-13 17:35:30

    这个是特定的写法吧,就是一个赋值的语句,比如 y = $( ls *.tar.gz *.gz); 之后 for i in $y;也是有效的