python - 如何将此命令传递给 subprocess.call?

标签 python subprocess

命令:

root@host:~#convert source.jpg -resize x500 -resize "500x<" -gravity center +repage target.jpg

Python 代码:

>> command_list = ['convert', 'source.jpg', '-resize', 'x500', '-resize', '\'500x<\'', '-gravity', 'center', 'target.jpg']
>> p = subprocess.call(command_list)
convert: invalid argument for option `'500x<'': -resize.

上面的代码有什么问题吗?

最佳答案

为什么 500x< 上有额外的引号?子进程将正确引用任何参数。

请记住,shell 不会将外部引号传递给应用程序,而只会传递带引号的值,但如果强制执行,子进程将传递引号。

关于python - 如何将此命令传递给 subprocess.call?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1811683/

相关文章:

Python NetworkX — 根据值列表自动设置节点颜色

python - 在 Python 中实现类似 shell 的管道性能

python - subprocess.call 环境变量

python - ffmpeg 将任何内容转换为 mp4

python - 在子进程 shell 中打开的文件

python - python字典自动添加尾随逗号

python - 将数据框保存和加载到 csv 导致未命名列

python - OOP——组织大类

python - Process.WaitforExit() 参数上的 IronPython 错误

python - 使用 Popen 的异步子进程