在Python中使用Subprocess

Big*_*ock 1 python django subprocess

我正在创建一个Django应用程序,它从用户获取输入文件.我想使用子进程模块获取文件并将其作为参数传递给外部脚本并收回结果.subprocess.Popen调用的格式是什么.我想,也像-a一样向脚本传递一个选项.换句话说,对于看起来像这样的命令行,subprocess.Popen调用会是什么样子:

./myscript -option file
Run Code Online (Sandbox Code Playgroud)

还有任何关于我试图运行的脚本的路径的问题.非常感谢.

这是我在views.py中使用的代码.我只是想看看一个简单的cp命令是否有效以及如何传递参数:

def upload_file(request):

    if request.method == 'POST':
    form=UploadFileForm()        
    form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            handle_uploaded_file(request.FILES['file'])
            return HttpResponseRedirect('/upload')
    else:
        form = UploadFileForm()
    return render_to_response('upload_file.html', {'form': form})

def handle_uploaded_file(f):

    p=subprocess.Popen(['/bin/cp',f , '/home/dutzy/Desktop'])
Run Code Online (Sandbox Code Playgroud)

Ble*_*der 5

subprocess.Popen 有一个非常容易理解的语法:

subprocess.Popen(['./myscript', '-option', 'file'])
Run Code Online (Sandbox Code Playgroud)

只需查看示例,您就可以获得模式.