紫風亂寫

          除了他眼前的屏幕,這個人什么也沒看見。
          被周圍的電腦簇擁著,他只知道他所創(chuàng)造的現(xiàn)實,但又意識到那是虛幻。
          他已經(jīng)超越了技術。也超越了機器。
          posts - 62, comments - 93, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          unix中反引號的應用

          Posted on 2007-04-18 21:14 Justfly Shi 閱讀(1969) 評論(1)  編輯  收藏 所屬分類: tips

          CURRENT=`pwd`
          echo $CURRENT

          以上兩行厲害吧?其實就是使用了反引號而已,注意pwd邊上的那兩撇不是單引號,是鍵盤左上角1邊上的那個鍵。

          下面是一點相關的資料
          來源是http://hi.baidu.com/lzwwqk/blog/item/40a3f41bb4f8b3fbae513358.html

          反引號 `

          反引號(`)這個字符所對應的鍵一般位于鍵盤的左上角,不要將其同單引號(’)混淆。反引號括起來的字符串被shell解釋為命令行,在執(zhí)行時,shell首先執(zhí)行該命令行,并以它的標準輸出結果取代整個反引號(包括兩個反引號)部分。例如:

          $ pwd

          /home/xyz

          $ string=”current directory is `pwd`”

          $ echo $string

          current directour is /home/xyz

          $

          shell執(zhí)行echo命令時,首先執(zhí)行`pwd`中的命令pwd,并將輸出結果/home/xyz取代`pwd`這部分,最后輸出替換后的整個結果。

          利用反引號的這種功能可以進行命令置換,即把反引號括起來的執(zhí)行結果賦值給指定變量。例如:

          $ today=`date`

          $ echo Today is $today

          Today is Mon Apr 15 16:20:13 CST 1999

          $

          反引號還可以嵌套使用。但需注意,嵌套使用時內層的反引號必須用反斜線(\)將其轉義。例如:

          $ abc=`echo The number of users is \`who| wc-l\``

          $ echo $abc

          The number of users is 5

          $

          在反引號之間的命令行中也可以使用shell的特殊字符。Shell為得到``中命令的結果,它實際上要去執(zhí)行``中指定的命令。執(zhí)行時,命令中的特殊字符,如$,”,?等又將具有特殊含義,并且``所包含的可以是任何一個合法的Shell命令,如:

          $ ls

          note readme.txt Notice Unix.dir

          $ TestString=”`echo $HOME ` ` ls [nN]*`”

          $ echo $TestString

          /home/yxz note Notice


          評論

          # re: unix中反引號的應用  回復  更多評論   

          2007-08-10 17:08 by dreamstone
          不錯
          主站蜘蛛池模板: 黄山市| 临猗县| 都匀市| 仁布县| 鲁甸县| 石柱| 盘山县| 上饶市| 微博| 大厂| 昌宁县| 鹤庆县| 尤溪县| 洮南市| 北辰区| 天峻县| 勃利县| 平凉市| 郑州市| 合江县| 宿迁市| 武威市| 永丰县| 黑水县| 和顺县| 常德市| 马边| 芷江| 河津市| 左云县| 绥滨县| 宁阳县| 霞浦县| 福鼎市| 崇明县| 牡丹江市| 宜兴市| 屏东县| 平远县| 栖霞市| 台安县|