Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > 其他编程语言 > getopts使用样例
【标  题】:getopts使用样例
【关键字】:getopts
【来  源】:http://blog.chinaunix.net/article.php?articleId=35888&blogId=7846

getopts使用样例

Your Ad Here getopts option_string variable   
具体使用方法请参考getopts的在线文档(man getopts).

使用getopts命令读取unix格式选项
    UNIX格式选项指如下格式的命令行参数:
    command -options parameters
 
    使用格式:
    getopts option_string variable
 
    具体使用方法请参考getopts的在线文档(man getopts).
 
    示例如下:
 
         #newdate
         if [ $# -lt 1 ]
         then
             date
         else
            while getopts mdyDHMSTjJwahr OPTION
            do
               case $OPTION
               in
                  m) date '+%m ';;  # Month of Year
                  d) date '+%d ';;  # Day of Month
                  y) date '+%y ';;  # Year
                  D) date '+%D ';;  # MM/DD/YY
                  H) date '+%H ';;  # Hour
                  M) date '+%M ';;  # Minute
                  S) date '+%S ';;  # Second
                  T) date '+%T ';;  # HH:MM:SS
                  j) date '+%j ';;  # day of year
                  J) date '+%y%j ';;# 5 digit Julian date
                  w) date '+%w ';;  # Day of the Week
                  a) date '+%a ';;  # Day abbreviation
                  h) date '+%h ';;  # Month abbreviation
                  r) date '+%r ';;  # AM-PM time
                  \?) echo "Invalid option $OPTION";;
               esac
            done
         fi
 
         $ newdate -J
         94031
         $ newdate -a -h -d
         Mon
         Jan
         31
         $ newdate -ahd
         Mon
         Jan
         31
         $
 
 
         示例程序:复制程序
 
         # Syntax: duplicate [-c integer] [-v] filename
         #    where integer is the number of duplicate copies
         #    and -v is the verbose option
 
         COPIES=1
         VERBOSE=N
 
 
         while getopts vc: OPTION
         do
            case $OPTION
            in
               c) COPIES=$OPTARG;;
               v) VERBOSE=Y;;
               \?) echo "Illegal Option"
                   exit 1;;
            esac
         done
 
         if [ $OPTIND -gt $# ]
         then
            echo "No file name specified"
            exit 2
         fi
 
 
         shift `expr $OPTIND -1`
 
         FILE=
         COPY=0
 
         while [ $COPIES -gt $COPY ]
         do
            COPY=`expr $COPY + 1`
            cp $FILE $$
            if [ VERBOSE = Y ]
            then
               echo $$
            fi
         done
 
 
         $ duplicate -v fileA
         fileA1
         $ duplicate -c 3 -v fileB
         fileB1
         fileB2
         fileB3 
  
 

PS命令详解:【上一篇】
正则表达式点滴:【下一篇】
【相关文章】
  • getopts的学习笔记
  • 【随机文章】
  • 图形界面的管理(包括启动,退出和环境设置)
  • linux启动服务解释大全
  • 用VS.NET2003制作WEB应用程序的安装包[转]
  • 修U盘的绝对好工具PTMD
  • 如何对您的QQ信息进行保密
  • IIS常见问题和错误及其解决方案
  • 允许远程注册表
  • 用 Eclipse、WTP 和 Derby 构建 Web 应用程序
  • 实现Cookie
  • ADSL宽带接入路由器ES600i
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.