cp:无法创建目录:没有这样的文件或目录

ash*_*jan 15 linux

您好
我正在尝试将文件夹从源复制到目标但我收到以下错误:

cp: cannot create directory ‘/home/Workspace/Release/addons/’: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我输入了以下命令:

cp -R /home/Workspace/Dev/user1/addons/account /home/Workspace/Release/addons/
Run Code Online (Sandbox Code Playgroud)

我用不同的文件夹尝试了相同的命令,它工作正常.

cp -R /home/Desktop/file_transfer/f1/ff1 /home/Desktop/file_transfer/f2/
Run Code Online (Sandbox Code Playgroud)


编辑:
Q2.当我在以下代码中传递命令时:

import os
import re
dest = "/home/Workspace/Release/addons/"
root = "/home/Workspace/Dev/user1/addons/"
f = open("/home/appslab/Desktop/main/FTP/release.conf.text", 'r')
for line in f:
    filepath = root+line
    command = "cp -R "+str(filepath)+"\ "+str(dest)
    print(command)
    os.system(command)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

~/Desktop/FTP$ sudo python oswalk.py
cp -R /home/appslab/Workspace/PythonDevserver/appslab/addons/account
 /home/appslab/Workspace/PythonRelease/addons
cp: missing destination file operand after ‘/home/appslab/Workspace/PythonDevserver/appslab/addons/account’
Try 'cp --help' for more information.
sh: 2: /home/appslab/Workspace/PythonRelease/addons: Permission denied
Run Code Online (Sandbox Code Playgroud)

command,我传递到os.system(),在该dest被显示出来在下一行.
谁能告诉我这是什么问题?
谢谢.
EDIT2:
该目录的权限:

drwxrwxr-x 363 user1 user1  16384 Sep 16 21:57 addons
Run Code Online (Sandbox Code Playgroud)

EDIT3 Fix for Q2::

command = `str("cp -R ")` + str(filepath)+"\ "+str(dest)
Run Code Online (Sandbox Code Playgroud)

Fal*_*arn 9

您收到permission denied错误消息。

使用更改插件目录的权限

sudo chmod -R 755 /home/Workspace/Release/addons/
Run Code Online (Sandbox Code Playgroud)


S. *_*elo 7

可能是因为路径的至少一个目录(/ home / Workspace / Release / addons /)不存在。cp不会创建addons目录(当然也不是其父目录),因此请确保该路径确实存在。

要创建路径,您可以执行以下操作:

mkdir -p /home/Workspace/Release/addons/
Run Code Online (Sandbox Code Playgroud)