我正在尝试使用argparse模块使用以下参数实现UNIX find
命令:
python3 find.py . -name new -type d -exec rm -rf {} \;
我遇到的具体问题是与-exec
标志有关。在这里,我应该接受所有论点,直到我打分号为止。我目前的工作方式是这样的:
parser.add_argument('-exec', nargs='*', help='specify the command to execute')
以列表形式获取所有参数,然后执行join
操作将它们全部连接在一起。
但是在这里argparse
每次尝试解析包含类似于Unrecognized Arguments
的标志的字符串时,都会导致rm -rf
异常。我当然可以通过使用""
来解决此问题,但我希望它尽可能地接近UNIX
命令。有没有办法在argparse中做到这一点?