我试图使用fabric(v2.6)来运行一些命令,这些命令使用bash的extglob和dotglob。
当我跑步时:
c.run(f"shopt -s extglob dotglob && rm -Rf {project_path}* !(.|..|.venv) && shopt -u extglob dotglob")
我得到了这个错误:
`bash: -c: line 0: syntax error near unexpected token `('`
我用的是
&&
因为我发现
shopt -s extglob dotglob
在单独的运行调用中,后续运行调用不会持续。我很确定
&&
正在启用extglob和dotglob,因为当我这样做时:
`c.run("shopt -s extglob dotglob && shopt")`
它打印出选项列表,extglob和dotglob都已启用。
我哪里做错了?