首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >OSError:[Errno 2]在Django中使用python子进程时没有这样的文件或目录

OSError:[Errno 2]在Django中使用python子进程时没有这样的文件或目录
EN

Stack Overflow用户
提问于 2013-09-23 23:09:41
回答 1查看 208.3K关注 0票数 163

我正在尝试运行一个程序,使用subprocess.call()在Python代码中进行一些系统调用,这会抛出以下错误:

代码语言:javascript
复制
Traceback (most recent call last):
      File "<console>", line 1, in <module>
      File "/usr/lib/python2.7/subprocess.py", line 493, in call
      return Popen(*popenargs, **kwargs).wait()
      File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
      File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
      raise child_exception
      OSError: [Errno 2] No such file or directory

我实际的Python代码如下:

代码语言:javascript
复制
url = "/media/videos/3cf02324-43e5-4996-bbdf-6377df448ae4.mp4"
real_path = "/home/chanceapp/webapps/chanceapp/chanceapp"+url
fake_crop_path = "/home/chanceapp/webapps/chanceapp/chanceapp/fake1"+url
fake_rotate_path = "/home/chanceapp/webapps/chanceapp.chanceapp/fake2"+url
crop = "ffmpeg -i %s -vf "%(real_path)+"crop=400:400:0:0 "+ "-strict -2 %s"%(fake_crop_path)
rotate = "ffmpeg -i %s -vf "%(fake_crop_path)+"transpose=1 "+"%s"%(fake_rotate_path)
move_rotated = "mv"+" %s"%(fake_rotate_path)+" %s"%(real_path)
delete_cropped = "rm "+"%s"%(fake_crop_path)
#system calls:
subprocess.call(crop)

我能得到一些关于如何解决这个问题的相关建议吗?

EN

回答 1

Stack Overflow用户

发布于 2019-11-26 06:25:56

如果您试图用双引号将文件参数放到Popen中,也可以引发No such file or directory

例如:

代码语言:javascript
复制
call_args = ['mv', '"path/to/file with spaces.txt"', 'somewhere']

在这种情况下,您需要删除双引号。

代码语言:javascript
复制
call_args = ['mv', 'path/to/file with spaces.txt', 'somewhere']
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18962785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档