隨筆-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)航:
           
          主站蜘蛛池模板: 康平县| 郧西县| 罗甸县| 洱源县| 咸丰县| 大田县| 都兰县| 县级市| 巢湖市| 道孚县| 阿克| 安庆市| 林周县| 乐都县| 桦南县| 泌阳县| 武义县| 崇阳县| 潞西市| 大埔县| 罗甸县| 淮阳县| 辰溪县| 陵川县| 香河县| 多伦县| 高尔夫| 美姑县| 吉水县| 辽中县| 石屏县| 建始县| 汉阴县| 巩义市| 亳州市| 新蔡县| 阳春市| 马关县| 彩票| 琼中| 保定市|