在双击破折号后有一个命令时,应用程序如何解析命令行? (不重复的this和this)
我知道什么会双破折号通常做:
A - 标志选项的结束,禁止选项 处理。 - 之后的任何参数都被视为文件 名称和参数。的说法 - 相当于 -
因此,设置以下的东西作为参数,例如: myapp -f <args> ...
然后$ myapp -f -- -a -b
将把-a
和-b
为-f
参数,而不是旗帜
但什么会发生时,需要一个应用程序:
myapp cmd <arg> -f <args>...
和命令行是$ myapp -f -- test cmd sth
,应该把它解析为:
myapp
收到-f
标志带参数test
,cmd
和sth
- 或
myapp
收到cmd
命令,然后sth
,带有参数test
我正在写一个命令行解析器-f
对于python,所以我需要知道它应该如何表现。
THX很多:)
不完全;如果'-f'需要一个参数,那么第一个会产生一个错误,第二个使用'test'作为'-f'的参数。 – chepner 2014-10-09 19:22:08