问题描述
考虑以下字符串:
./kmux.py -r 'messenger.* xx'
如果 kmux.py
是一个 python 脚本,并且上面的字符串作为参数提供给 bash,那么 sys.argv
将是以下列表:
["./kmux.py","-r","messenger.* xx"]
是否有标准的python函数可以将第一个字符串转换为数组?
我可以在 Python 中手动复制 bash 的逻辑以获取原始字符串并将其转换为这个数组,但我很好奇是否已经存在这样的函数。
解决方法
像这样使用默认的 shlex
包:
import shlex
shlex.split("'./kmux.py -r 'messenger.* xx'")