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

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

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

          查了一下命令手冊:發現用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
          就會執行 ls -al 這個命令, stringa 其實不起左右,但是這個參數還是要的

          Example.sh -b -lrt
          那就會執行 ls -l -lrt 傳進去的參數起作用了

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


          可以用變量保存這些OPTARG參數,在while循環外面接著使用

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

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


          網站導航:
           
          主站蜘蛛池模板: 灵台县| 都匀市| 清涧县| 马关县| 兴国县| 嘉祥县| 临江市| 东乡| 长武县| 九江县| 专栏| 灵璧县| 蓬安县| 延安市| 濉溪县| 沂源县| 中宁县| 玉田县| 临海市| 阜南县| 班戈县| 伽师县| 延长县| 浪卡子县| 个旧市| 勐海县| 霍城县| 淮北市| 庆城县| 美姑县| 敖汉旗| 邻水| 二连浩特市| 紫云| 东安县| 吉隆县| 阿克陶县| 永靖县| 五华县| 朝阳区| 双城市|