V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
MakHoCheung
V2EX  ›  问与答

关于 <>、[]、| 之类的符号

  •  
  •   MakHoCheung · Aug 16, 2021 · 1889 views
    This topic created in 1726 days ago, the information mentioned may be changed or developed.

    以前看书,或者一些命令行程序的帮助信息的都有 <>、[]、| 这些符号。 比如

    usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
               [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
               [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
               [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
               <command> [<args>]
    

    我目前猜的 <> 是必须,[] 是可选,| 是或,我想问下大佬们这种叫什么表达符号,我想系统地了解一下。我前不久才知道 * 和 ? 叫做 glob 模式匹配。真学无止境啊

    7 replies    2021-08-16 23:53:48 +08:00
    lixiang2017
        1
    lixiang2017  
       Aug 16, 2021 via Android
    想到了编译原理里的词法分析、自动机,应该有点关系
    gainsurier
        2
    gainsurier  
       Aug 16, 2021
    这些没有绝对的用法,一般是习惯或者通用的做法,了解下就好,有需求再去查阅相关文档即可。
    jybox
        3
    jybox  
       Aug 16, 2021   ❤️ 2
    POSIX 的约定 https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap12.html
    一个试图规范化参数说明的开源项目(包含各个语言的解析器) http://docopt.org
    weixiangzhe
        5
    weixiangzhe  
       Aug 16, 2021
    wiki 上的是上面的定义,但是日常使用上有些参数还是不太一样样子
    CEBBCAT
        6
    CEBBCAT  
       Aug 16, 2021
    我很久之前确实从某处读到过这些符号的解释,可惜现在已经忘记了。下面这两个链接也许可以解释你一部分的疑惑:

    https://stackoverflow.com/q/9725675
    https://docs.python.org/3/library/argparse.html
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3461 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 63ms · UTC 10:41 · PVG 18:41 · LAX 03:41 · JFK 06:41
    ♥ Do have faith in what you're doing.