在我的本地机器上,我运行一个包含这一行的python脚本
bashCommand = "cwm --rdf test.rdf --ntriples > test.nt"
os.system(bashCommand)
Run Code Online (Sandbox Code Playgroud)
这很好用.
然后我在服务器上运行相同的代码,我收到以下错误消息
'import site' failed; use -v for traceback
Traceback (most recent call last):
File "/usr/bin/cwm", line 48, in <module>
from swap import diag
ImportError: No module named swap
Run Code Online (Sandbox Code Playgroud)
所以我所做的就是插入一个"print bashCommand",它在使用os.system()运行它之前打印我,而不是终端中的命令.
当然,我再次得到错误(由os.system(bashCommand)引起)但在该错误之前它在终端中打印命令.然后我只是复制了那个输出并在终端上做了一个复制粘贴,然后点击回车就可以了......
有没有人知道发生了什么?
我被要求编写一个脚本,从Git中提取最新代码,进行构建,并执行一些自动单元测试.
我发现有两个内置的Python模块可以与Git交互,并且可以随时使用:GitPython和libgit2.
我应该使用什么方法/模块?
我想使用 ffmpeg 和 python 在图像上叠加透明视频
我可以通过终端成功完成此操作,但无法让 ffmpeg 命令在 python 中工作。当我位于包含文件的目录中时,以下命令会在终端中生成我想要的结果。
ffmpeg -i head1.png -i hdmiSpitting.mov -filter_complex "[0:v][1:v] overlay=0:0" -pix_fmt yuv420p -:a copy output3.mov
Run Code Online (Sandbox Code Playgroud)
在 python 中,我的代码很简单:
import os
import subprocess
command = "ffmpeg -i head1.png -i hdmiSpitting.mov -filter_complex \"[0:v][1:v] overlay=0:0\" -pix_fmt yuv420p -c:a copy output3.mov"
subprocess.call(command,shell=True)
Run Code Online (Sandbox Code Playgroud)
代码运行,没有任何错误指示,但没有产生任何输出。
我在这里缺少什么?