Câu trả lời:
Một tệp thông thường là một tệp không phải là một thư mục hoặc các loại tệp đặc biệt kỳ lạ khác như các đường ống, thiết bị, ổ cắm, cửa ra vào, v.v. Các liên kết tượng trưng cũng không phải là các tệp thông thường, nhưng chúng hoạt động như mục tiêu của chúng khi nó một ứng dụng đang truy cập nội dung của tập tin.
Bạn đã thông qua root@IP:
như là nguồn của bản sao và /path/to/picture.jpg
là đích đến. Nguồn là thư mục chính của người dùng root
trên máy IP
. Điều này hữu ích như là một điểm đến, nhưng không phải là một nguồn. Những gì bạn đã nhập cần thiết để sao chép một thư mục vào một tập tin; scp
không thể sao chép một thư mục trừ khi bạn yêu cầu một bản sao đệ quy với -r
tùy chọn (và nó sẽ từ chối ghi đè lên một tệp hiện có ngay cả với một thư mục -r
, nhưng nó sẽ lặng lẽ ghi đè lên một tệp thông thường nếu nguồn là một tệp thông thường).
Nếu /path/to/picture.jpg
là đường dẫn trên máy từ xa của tệp bạn muốn sao chép, bạn cần phải dán tên tệp vào đặc tả máy chủ. Đó là dấu hai chấm :
ngăn cách tên máy chủ với đường dẫn từ xa. Bạn sẽ cần phải xác định một điểm đến là tốt.
scp root@IP:/path/to/picture.jpg /some/destination
Nếu bạn muốn sao chép tệp cục bộ /path/to/picture.jpg
vào máy chủ từ xa, bạn cần trao đổi các đối số. Các lệnh sao chép Unix đặt (các) nguồn đầu tiên và đích cuối cùng.
scp /path/to/picture.jpg root@IP:
Nếu bạn muốn sao chép tệp từ xa /path/to/picture.jpg
vào cùng một vị trí cục bộ, bạn cần lặp lại đường dẫn. Bạn có thể có vỏ của bạn thực hiện công việc lặp lại cho bạn (ít gõ, ít đọc hơn).
scp root@IP:/path/to/picture.jpg /path/to/picture.jpg
scp {root@IP:,}/path/to/picture.jpg
Khi sao chép một thư mục, bạn nên sử dụng -r
tùy chọn:
scp -r root@IP:/path/to/file /path/to/filedestination
vấn đề cú pháp - loại bỏ khoảng trắng giữa
root @ IP:
và
/con đường
scp
nữa.
not a regular file
-r
làm đối số scp.
scp root@IP:/path/to/file /path/to/filedestination
Lệnh trên sao chép một tập tin từ máy chủ từ xa vào máy tính của bạn. Nếu bạn gõ chỉ scp root@IP:
nó sẽ cố gắng sao chép thư mục gốc của root (nhà người dùng scp .
).
Vì vậy, bạn cần cung cấp đường dẫn chính xác đến tập tin
Bạn đang gặp phải lỗi đó vì bạn đang cố sao chép một thư mục chứ không phải tệp và do đó bạn nên sao chép các tệp của mình một cách đệ quy bằng cách sử dụng -r
tùy chọn
Sử dụng lệnh dưới đây khi sao chép tệp từ máy từ xa sang máy cục bộ
scp -r root@RemoteIP:/path/to/file /path/to/filedestination
HOẶC LÀ
Khi sao chép tập tin từ máy cục bộ sang máy từ xa
scp -r /path/to/file root@RemoteIP:/path/to/filedestination
scp root@IP:/path/to/*.jpg /path/to/filedestination/
Điều này sẽ hoạt động (ít nhất là trên máy Mac của tôi)