zoukankan      html  css  js  c++  java
  • Shell中反引号和$()的区别

      Shell中可以用来实现变量代换的命令有两种,一种是由反引号括起来的一条命令另一种是由$()括起来一条命令,shell先执行这条命令,然后见输出结果立刻代换到当前命令行中。

      例如定义一个变量存放date命令的输出:

        $DATE=`data`

        $echo $DATE

      命令代换也可以用$()表示:$DATE=$(date)  输出的效果是一样的。我们知道系统是不会存在冗余的的命令,那么这两种方式有什么区别呢?下面我们再看一个例子:

        i=1

        time1=Fri Aug 23 11:35:21

        a=$(echo ime1)

      经运行,命令的输出结果是$time1

      那么换成a=`echo ime1`输出结果还是一样的吗?输出结果如下:

        Fri Aug 23 11:35:21

      这种结果的原因如下:

        1.反引号本身就对进行了转移,保留了其本身的意思,如果我们想在反引号中起到的特殊意义的话,我们必须用两个反斜杠来进行表示。

        2.$()中不需要考虑的问题,与我们平常使用的一样

      反引号是老的用法,$()是新的用法,不管在学习测试中还是在实际工作中,$()的用法都是被推荐的。

  • 相关阅读:
    第一次热身赛和正式比赛感想
    简明解释算法中的大O符号
    poj 3045
    poj 3104
    poj 3273
    poj 3258
    poj 2456
    二分法小结
    Poj 2718 Smallest Difference
    GCJ——Crazy Rows (2009 Round 2 A)
  • 原文地址:https://www.cnblogs.com/qingjiaowoxiaoxioashou/p/6601626.html
Copyright © 2011-2022 走看看