all

从python中执行命令行程序

发布于 2022-04-11 13:24:04

我正在构建一个 Web
应用程序,它将处理(填充、混合、合并等)声音文件,我发现sox完全符合我的要求。Sox 是一个
linux 命令行程序,我对让 python web 应用程序根据每个请求在我的服务器上启动新的 sox 进程感到有点不舒服。

例子:

import os
os.system('sox input.wav -b 24 output.aiff rate -v -L -b 90 48k')

整个设置对我来说似乎有点不稳定。

所以我的问题是,从 python(或任何脚本语言)网络应用程序中运行命令行程序的最佳实践是什么?

为了绕过整个请求响应周期,消息队列将是一回事。但是还有其他方法可以让这些东西更优雅吗?

关注者
0
被浏览
21
1 个回答
  • 面试哥
    面试哥 2022-04-11
    为面试而生,有面试问题,就找面试哥。

    subprocess模块是从 Python
    运行其他程序的首选方式——比os.system.

    import subprocess
    #subprocess.check_output(['ls', '-l'])  # All that is technically needed...
    print(subprocess.check_output(['ls', '-l']))
    


推荐阅读
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看