1

我有一个tool需要input并制作output

$ tool input > output

我想添加一个长字符串选项——比如“评论”选项。此注释文本是选项的一个参数,并且是一个包含在正向刻度线中的句子:

$ tool --comment='I am commenting on the use of comments' input > output_plus_comment

这与通常--foo=bar的键值对不同,其中foo是选项名称并且bar是一个单词值(例如,truered,...)。

是否有一个很好的 C 命令行解析器库来处理这种特殊情况?

4

1 回答 1

2

将命令行标记为程序的参数是您的 shell 的责任,而不是您的责任。所以你没有什么可做的。

只需在包含空格的字符串周围加上引号,或者在命令行上用反斜杠转义空格,您的--foo值可以包含任意数量的空格。

于 2012-10-05T12:46:43.490 回答