隨筆-46  評論-64  文章-2  trackbacks-0

          問題,向腳步傳遞參數(shù)的時候如何取得一個一個的option

          辦法一: 就是一個一個讀 用$#取得變量個數(shù),然后讀$1 $2 $3,不是很方便

          查了一下命令手冊:發(fā)現(xiàn)用getopts命令更方便,man page不是很好懂

          直接看 Example.sh:

          # !/ bin / sh

          while ?getopts?'a:b:c'?myoption
          ????
          do
          ????
          case ?$myoption? in
          ????????a)?ls?
          - al
          ????????;;????
          ????????b)?ls?
          - l?$OPTARG????
          ????????;;
          ????????c)?ls?
          - l????
          ????esac
          ????done


          用法和效果:
          Example.sh -a stringa
          就會執(zhí)行 ls -al 這個命令, stringa 其實不起左右,但是這個參數(shù)還是要的

          Example.sh -b -lrt
          那就會執(zhí)行 ls -l -lrt 傳進(jìn)去的參數(shù)起作用了

          當(dāng)然也可以這樣
          Example.sh -a 123 -b -lrt z, 這個作用就是兩個命令都執(zhí)行了


          可以用變量保存這些OPTARG參數(shù),在while循環(huán)外面接著使用

          posted on 2007-10-30 14:46 jht 閱讀(2196) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 南宁市| 宜都市| 台北市| 台江县| 全州县| 休宁县| 林芝县| 涪陵区| 安丘市| 海南省| 阳西县| 长顺县| 克山县| 泰兴市| 山东省| 阳原县| 静乐县| 乌海市| 元江| 屯门区| 西乌珠穆沁旗| 三都| 疏附县| 定安县| 铅山县| 乐亭县| 贵德县| 金堂县| 绥宁县| 五大连池市| 界首市| 天气| 乐昌市| 松桃| 津市市| 哈巴河县| 中山市| 金平| 唐海县| 景德镇市| 蓬安县|