`
izuoyan
  • 浏览: 9221149 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Perl getopts Howto--如何使用perl中的getopts

阅读更多

Perl getopts Howto

This howto comes with no guaratees other than the fact that these code segments were copy/pasted from code that I wrote and ran successfully.

<style type="text/css"> <!-- .pod PRE { background : #eeeeee; border : 1px solid #888888; color : black; padding-top : 1em; white-space : pre; } .pod H1, H2 { background : transparent; color : #ff7300; } --></style>

Process options passed to a program using getopts().

Make a global hash to store the options. Use the standard Getopt module. Make a string of one-character options. A character preceeding a colon takes an argument. The getopts function takes two arguments: a string of options, and a hash reference. For each command line option (aka switch) found, getopts sets $opt{x} (where x is the switch name) to the value of the argument, or 1 if no argument was provided.

Example

    #
    # Globals
    #
    use vars qw/ %opt /;

    #
    # Command line options processing
    #
    sub init()
    {
        use Getopt::Std;
        my $opt_string = 'hvdf:';
        getopts( "$opt_string", \%opt ) or usage();
        usage() if $opt{h};
    }

    #
    # Message about this program and how to use it
    #
    sub usage()
    {
        print STDERR << "EOF";

    This program does...

    usage: $0 [-hvd] [-f file]

     -h        : this (help) message
     -v        : verbose output
     -d        : print debugging messages to stderr
     -f file   : file containing usersnames, one per line

    example: $0 -v -d -f file

    EOF
        exit;
    }

    init();

    print STDERR "Verbose mode ON.\n" if $opt{v};
    print STDERR "Debugging mode ON.\n" if $opt{d};

AUTHOR

Alex BATKO <abatko AT cs.mcgill.ca>

分享到:
评论

相关推荐

    使用getopts.sh

    使用getopts

    解析鱼中的CLI选项。-Linux开发

    Getopts Getopts是鱼类的命令行选项解析器。 getopts -ab1 --foo = bar baz | 而读-l键值开关$ key ...curl -Lo〜/ .config / fish / functions / getopts.fish --create-dirs git.io/getopts用法研究以下内容中的输出

    Shell脚本中使用getopts处理多命令行选项

    下面将详细介绍`getopts`的使用方法及其在脚本中的应用。 `getopts`的基本语法是: ```bash getopts optstring varname ``` - `optstring` 是一系列可能的选项,每个选项前通常加一个破折号(-)。如果某个选项需要...

    使用getopts处理选项和参数.sh

    使用getopts处理选项和参数

    getopts:解析CLI参数

    基于已经使用了数十年的,Getopts合理的默认值可帮助您编写看上去和感觉上像是真正的交易的CLI工具。 $ example --type=module -o main.js * .{js,json} import getopts from "getopts" const options = getopts ...

    样本cmdline-perl

    标题“样本cmdline-perl”和描述中的信息虽然简洁,但可以推测这可能是一个关于使用Perl语言在命令行环境中操作的示例项目。Perl是一种通用的、解释型的编程语言,特别适合处理文本和系统管理任务。在命令行环境下,...

    plugin-getopts:鱼类的getopts的Unix兼容实现

    getopts 友好 :fish:用法Add ` getopts ` to your ` $fish_plugins ` or import directly into your library via `import plugins/ getopts `.前提每个实用程序/函数都需要处理参数。 通常会发生的是,每个函数都会...

    Advanced Bash-Scripting Guide <>

    在Perl 脚本中使用eval 命令来强制变量替换 11-15. 使用set 来改变脚本的位置参数 11-16. 重新分配位置参数 11-17. Unset 一个变量 11-18. 使用export 命令传递一个变量到一个内嵌awk 的脚本中 11-19. 使用getopts ...

    使用Perl生成随机密码

    如果用户要求密码中的字符是唯一的(`-u`选项),在添加字符时会从原始数组中移除已使用的字符,以确保不重复。 最后,根据密码长度 `$len` 和可用字符数组 `@ch_src`,通过循环随机选择字符并添加到 `@rand_str` ...

    linux-getoptsfish的命令行选项解析器

    使用`fish-getopts`时,开发者可以定义一系列有效的选项,并且它可以自动处理错误,如无效的选项、缺少必需的参数等。这极大地简化了处理命令行输入的工作。基本用法包括定义一个包含有效选项的字符串,然后在循环中...

    node-getopts:符合POSIXGNU的CLI参数解析器

    getopts 负责CLI参数解析和验证,因此您不必这样做。强调遵循POSIX / GNU约定 严格的输入验证错误被收集到一个数组...解析选项/参数,使用过滤器,并检查错误const { opts , args , errors } = getopts ( { opts : [

    Linux高级bash编程

    在Perl脚本中使用eval命令来强制变量替换 11-15. 使用set来改变脚本的位置参数 11-16. 重新分配位置参数 11-17. Unset一个变量 11-18. 使用export命令传递一个变量到一个内嵌awk的脚本中 11-19. 使用getopts命令来...

    Shell编程介绍.pptx

    Shell 编程是指使用 Shell scripting 语言编写的一种编程方式,用于自动化 Linux 操作系统中的各种任务。Shell 是一个命令行接口,允许用户输入命令来执行操作系统的各种功能。 Shell 简介 ---------------- ...

    2009 达内Unix学习笔记

    输出重定向,意思就是说,将原来屏幕输出变为文件输出,即将内容输到文件中。 输入重定向。 本来命令是通过键盘得到输入的,但是用小于号,就能够使命令从文件中得到输入。 \ 表示未写完,回车换行再继续。 * ...

    ftp同步文件

    为了实现FTP文件同步的功能,脚本中使用了以下几个重要的Perl模块: - **Net::FTP**:提供FTP客户端的功能,可以用来连接FTP服务器并执行各种FTP命令。 - **File::Find**:用于遍历本地文件系统的目录结构,方便找...

    GetOpts:阅读Wolfram语言(又名Mathematica)中的命令行选项

    阅读Wolfram语言(又名Mathematica)中的命令行选项 文献资料 GetOps[argv, spec]根据spec列表提取argv list的值。 argv是代表命令行参数(程序名称除外)的字符串列表。 具有长和短选项值的选项的受支持格式为: -...

    typedopts:Rust中具有类型意识的命令行解析器

    Rust中可识别类型的命令行解析基本原理尽管getopts可用于Rust平台,但它不是很实用,因为必须检查生成的属性映射是否存在,然后将其转换为所需的类型,从而导致许多选项和模式匹配。 Typedopts在上用法使用此库,您...

    第10章 Shell脚本编程1

    - 定义函数:使用`function`关键字或直接在脚本中写入函数体。 - 调用函数:通过函数名来执行。 - 返回值:通过`return`语句传递函数执行结果。 通过学习这些知识点,你可以编写出具有复杂逻辑的Shell脚本,以...

Global site tag (gtag.js) - Google Analytics