python subprocess.call []无法对带有空格的文件进行操作

x1c70r

我在Linux上的目录中有文件列表:

files 1.pdf
files 2.pdf
files.pdf
files 3.pdf

我在列表中分配了所有内容:

>>> files_destino = [f for f in os.listdir("./espacio/")]

当我进行for循环时,即使它有空格,它也会列出文件。

   >>> for i in files_destino:
...     print i
... 
files 1.pdf
files 2.pdf
files.pdf
files 3.pdf

但是,当我尝试对它们执行“ cp”或“ rsync”或任何其他命令时,除了没有空格的命令外,它们似乎不存在。

    >>> for i in files_destino:
...     subprocess.call(["cp","-v",i,"/tmp/"])
... 
cp: files 1.pdf: No such file or directory
1
cp: files 2.pdf: No such file or directory
1
files.pdf -> /tmp/files.pdf
0
cp: files 3.pdf: No such file or directory
1

这种行为有什么原因吗?

谢谢


这是建议的输出。

   >>> subprocess.call(["cp","-v",'"'+i+'"',"/tmp/"])
cp: "files 1.pdf": No such file or directory
1
>>> subprocess.call(["cp","-v",'"{}"'.format(i),"/tmp/"])
cp: "files 1.pdf": No such file or directory
1
博宾斯
cp: files 1.pdf: No such file or directory

该文件files 1.pdf不在当前目录内。它位于您列出的目录中./espacio/如果可行files.pdf,那只是因为巧合的是files.pdf,curcur目录中还包含一个内部目录。

parent_path = './espacio/'
for file_name in os.listdir(parent_path):
    file_path = os.path.join(parent_path, file_name)
    subprocess.call(["cp", "-v", file_path ,"/tmp/"])

但是,正如@Colonel Thirty 22所评论的那样,通常最好在Python中进行复制,而不是在可能的情况下使用shell命令。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有空格的文件夹路径在 subprocess.call 中给出错误

来自分类Dev

使用 subprocess.call 执行 python 文件?

来自分类Dev

带有subprocess.check_call的奇怪python错误

来自分类Dev

Python subprocess.call问题

来自分类Dev

Python:subprocess.call 注入

来自分类Dev

python subprocess.check_call无法正确解析

来自分类Dev

python subprocess.call无法正确处理信号

来自分类Dev

python subprocess.call()无法按预期工作

来自分类Dev

python subprocess.call()无法按预期工作

来自分类Dev

Python subprocess.call 无法打开 Notepad.exe?

来自分类Dev

管道传输到文件时,python subprocess.call错误

来自分类Dev

解析Python中subprocess.call()的输出

来自分类Dev

python subprocess.call参数问题

来自分类Dev

使用 subprocess.call 的 Python 执行顺序

来自分类Dev

Python没有从subprocess.check_call获取原始二进制文件

来自分类Dev

Python 中的 subprocess.call 没有这样的文件或目录错误

来自分类Dev

Python-无法打开带有空格的文件

来自分类Dev

在python的subprocess.call函数中使用带空格的字符串

来自分类Dev

在Python中使用subprocess.call('dir',shell = True)时找不到指定的文件

来自分类Dev

使用python subprocess.call将Fasta序列数写入文件

来自分类Dev

在Python中使用subprocess.call('dir',shell = True)时找不到指定的文件

来自分类Dev

如何将Python的subprocess.call()输出重定向到文件?

来自分类Dev

Python的subprocess.call()和Bash流在语义上是否有所不同?

来自分类Dev

Subprocess.call ffmpeg 制作空文件

来自分类Dev

subprocess.call没有等待

来自分类Dev

cmd执行但python os.popen和subprocess.call和subprocess.popen和os.system无法执行,为什么?

来自分类Dev

带有rpyc抛出错误的subprocess.call

来自分类Dev

Python subprocess.call()显然不适用于psexec

来自分类Dev

OSError:[Errno 13]权限被拒绝Python subprocess.call()

Related 相关文章

  1. 1

    带有空格的文件夹路径在 subprocess.call 中给出错误

  2. 2

    使用 subprocess.call 执行 python 文件?

  3. 3

    带有subprocess.check_call的奇怪python错误

  4. 4

    Python subprocess.call问题

  5. 5

    Python:subprocess.call 注入

  6. 6

    python subprocess.check_call无法正确解析

  7. 7

    python subprocess.call无法正确处理信号

  8. 8

    python subprocess.call()无法按预期工作

  9. 9

    python subprocess.call()无法按预期工作

  10. 10

    Python subprocess.call 无法打开 Notepad.exe?

  11. 11

    管道传输到文件时,python subprocess.call错误

  12. 12

    解析Python中subprocess.call()的输出

  13. 13

    python subprocess.call参数问题

  14. 14

    使用 subprocess.call 的 Python 执行顺序

  15. 15

    Python没有从subprocess.check_call获取原始二进制文件

  16. 16

    Python 中的 subprocess.call 没有这样的文件或目录错误

  17. 17

    Python-无法打开带有空格的文件

  18. 18

    在python的subprocess.call函数中使用带空格的字符串

  19. 19

    在Python中使用subprocess.call('dir',shell = True)时找不到指定的文件

  20. 20

    使用python subprocess.call将Fasta序列数写入文件

  21. 21

    在Python中使用subprocess.call('dir',shell = True)时找不到指定的文件

  22. 22

    如何将Python的subprocess.call()输出重定向到文件?

  23. 23

    Python的subprocess.call()和Bash流在语义上是否有所不同?

  24. 24

    Subprocess.call ffmpeg 制作空文件

  25. 25

    subprocess.call没有等待

  26. 26

    cmd执行但python os.popen和subprocess.call和subprocess.popen和os.system无法执行,为什么?

  27. 27

    带有rpyc抛出错误的subprocess.call

  28. 28

    Python subprocess.call()显然不适用于psexec

  29. 29

    OSError:[Errno 13]权限被拒绝Python subprocess.call()

热门标签

归档