2016-10-04 19 views
7

Hi
Tôi cố gắng để sao chép một thư mục từ một nguồn đến đích, nhưng tôi nhận được lỗi sau:
cp: không thể tạo thư mục: Không có tập tin hoặc thư mục

cp: cannot create directory ‘/home/Workspace/Release/addons/’: No such file or directory 

tôi bước vào lệnh sau đây :

cp -R /home/Workspace/Dev/user1/addons/account /home/Workspace/Release/addons/ 

Tôi đã thử lệnh tương tự với các thư mục khác nhau và hoạt động tốt.

cp -R /home/Desktop/file_transfer/f1/ff1 /home/Desktop/file_transfer/f2/ 


EDIT:
Q2. Khi tôi vượt qua lệnh trong đoạn mã sau:

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) 

Tôi nhận được lỗi sau:

~/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 

Các command rằng tôi đi qua để os.system(), trong đó các dest được hiển thị trên tiếp theo hàng.
Có ai cho tôi biết vấn đề là gì không?
Cảm ơn bạn.
EDIT2:
Quyền cho thư mục đó:

drwxrwxr-x 363 user1 user1 16384 Sep 16 21:57 addons 

EDIT3: Fix for Q2:

command = `str("cp -R ")` + str(filepath)+"\ "+str(dest) 
+4

Điều này đã có để làm với python? –

+0

Vui lòng đăng ở đây cho phép của thư mục đó. – Shaon

+0

Tôi nghĩ rằng lỗi là chính xác. Bạn không có thư mục '/ home/Workspace/Release/addons', cũng không phải thư mục'/home/Workspace/Release/', vì vậy bạn nên tạo một hoặc cả hai thư mục – nos

Trả lời

1

Bạn đang nhận được một lỗi permission denied.

Thay đổi các điều khoản của thư mục addon sử dụng

sudo chmod -R 755 /home/Workspace/Release/addons/ 
+0

Hoặc/home/Workspace/Release /, có lẽ một 'mkdir -p' home/Workspace/Release/addons/'' sẽ giúp – user2829759

+0

Có, thư mục ở đó. – ashwinx

+0

@ashwinx: Xem câu trả lời cập nhật của tôi. Hy vọng nó sẽ giúp – FallAndLearn

0

Nó có lẽ là bởi vì ít nhất một trong những thư mục của con đường của bạn (/ home/Workspace/phát hành/addons /) không tồn tại. cp sẽ không tạo thư mục addons (không phải bố mẹ của nó), vì vậy hãy đảm bảo rằng đường dẫn thực sự tồn tại.

Để tạo đường dẫn mà bạn có thể làm:

mkdir -p /home/Workspace/Release/addons/ 
+1

Thư mục 'addon' tồn tại. – ashwinx

+0

'addon' hoặc' addons'? –

+0

'addons', xấu của tôi. Đó là chính xác trong mã. – ashwinx

Các vấn đề liên quan