最好是举个例子。
我希望我的CLI能够同时运行,如何在帮助文档中正确传达此信息?
Usage: my-cli import FILE my-cli import [FILE] (in case where stdin is used only)
例如
my-cli import test.xlsx
my-cli import < test.xlsx
在第二种情况下,未传递FILE标志(因此,要求FILE会在我当前的实现中导致错误)。
放松约束使系统按预期工作,除了现在可以不传入文件并且不可以通过stdin传入。
有关更多上下文,我正在使用Django Management CLI(语法紧跟argparse)。这是一些代码,显示FILE场景在哪里(可选)。
def add_arguments(self, parser): subparsers = parser.add_subparsers( title='commands', dest='command', help='command help') subparsers.required = True parser_import = subparsers.add_parser('import', help='import help') parser_import.add_argument('FILE', nargs='?', type=argparse.FileType('r'), default=sys.stdin)
nargs='?'
参数使帮助看起来像:
usage: manage.py my-cli import [-h] [FILE] positional arguments: FILE optional arguments: -h, --help show this help message and exit
我正在寻找的是以某种方式调整我的代码,以使生成的
./manage.py my-cli import --help
显示更多理智的东西。另外,不通过标准输入传递任何东西或不传递文件都会引发错误。
最好是举一个例子。我希望CLI能够同时运行,如何在帮助文档中正确传达此信息?用法:my-cli import FILE my-cli import [FILE](如果stdin ...