[英]python3.7 optionparser input option with asterisk(*) becomes a file in the folder
python3.7
带有选项的 OptionParser [ add_option('-t', '--target', action='append', dest='targets') ]
操作系统:CentOS7.6
所以我使用这个选项来输入一个目标列表,并使用这个命令行:
parser -t logs* -t test
在我执行这个命令行的地方有一个文件“logs.tar.gz”,当我打印目标的值时,这就是我得到的:
['logs.tar.gz', 'test']
所以我认为这是系统级别的“问题”,我想知道的是:
有什么方法可以在 python 中使logs*
logs*
成为没有输入logs\*
的日志*?
shell 是谁在扩展*
。 python 在这里无能为力,因为它永远不会知道log*
。
您可以强制您的 shell 将*
解释为带有一些引用的文字值:
parser -t "logs*" -t test
这适用于 zsh,对于您的 shell 可能会有所不同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.