openstack关于utils.execute


首先不得不吐糟下国内openstack的开发者是不是太少了,关于openstack编码的一些细节问题很少有人知道。

这里记录一下扩展openstack时遇到的一个小问题

openstack的utils.execute其实是封装的subprocess模块用来执行一些shell命令

具体是调用的subprocess模块的Popen执行的

假如我们想执行以下命令

rm -rf /home/uu*

删除/home下所有以uu开头的文件,我们必须这样才能正确执行这个命令

str = 'rm -rf /home/uu*'
utils.execute(str, shell=True)

原理:调用shell来执行这个字符串,否则无论你怎么转义都是没用的。

相关内容