Python 双花括号在bash命令中起什么作用?

Python 双花括号在bash命令中起什么作用?,python,bash,command,escaping,curly-braces,Python,Bash,Command,Escaping,Curly Braces,我正在重构一个脚本,我看到: /bin/bash -c 'rm -rf directory/{{..?*,.[!.]*,*}}' 奇怪的是,谷歌搜索“bash double curly braces”到目前为止还没有让我有任何进展。这个代码是做什么的 编辑:显然,我没有包括足够的细节。实际上,它是一个使用format()的python命令,因此双花括号实际上是为此转义的单花括号 subprocess.check_output(['/bin/bash', '-c', 'rm -rf {0}/{{

我正在重构一个脚本,我看到:

/bin/bash -c 'rm -rf directory/{{..?*,.[!.]*,*}}'
奇怪的是,谷歌搜索“bash double curly braces”到目前为止还没有让我有任何进展。这个代码是做什么的

编辑:显然,我没有包括足够的细节。实际上,它是一个使用
format()
的python命令,因此双花括号实际上是为此转义的单花括号

subprocess.check_output(['/bin/bash', '-c', 'rm -rf {0}/{{..?*,.[!.]*,*}}'.format('directory')]

@另一个人在评论中提到了这一点。

你在重构什么样的脚本?你确定
{
在外部脚本中没有用于某种模板或转义吗?@那好吧,它是一个python脚本,使用
子进程。check_output()
运行命令,但没有模板。我显示的是执行的内容。它看起来像是
bash-c'rm-rf目录的输入错误/{..?*,[!.]*,*}
除非
目录
确实包含名称以
{
开头,以
}结尾的文件/目录
-请尝试
回送目录/{..?*,[!.]*,*}
回送目录/{..?*,[!.]*,*}
@mattalxndr您是否介意在发布时添加更多上下文,而不进行任何编辑?我猜真正的代码类似于
子流程。检查输出(“/bin/bash-c'{}/{..?*,[!.]*,*}”。格式(“mydirectory”)
,这可以解释it@thatotherguy你是对的。如果你加上这个作为回答,我可以接受。