tra-loi-cau-hoi-phat-trien-web.com

scp từ Linux sang Windows

Tôi đang chạy ứng dụng khách PuTTY trên máy Windows để kết nối thành công với hộp Linux. Bây giờ tôi muốn có thể sao chép một tệp từ máy Linux theo đường dẫn /home/ubuntu/myfile sang C:/Users/Anshul/Desktop trên máy tính cục bộ của tôi. Người dùng tại máy Windows là anshul. Tôi đang đưa ra lệnh sau trên PuTTY nhưng nó không hoạt động:

scp /home/ubuntu/myfile ip_address_of_windows_machine:C:/Users/Anshul/Desktop 

Tôi nghĩ rằng đường dẫn cho máy Windows là sai. Xin hãy giúp đỡ vì tôi đã đập đầu vào một số lượng lớn các diễn đàn nhưng dường như không có đường dẫn chính xác nào cho máy chủ Windows. Không đề xuất các tùy chọn thay thế như WinScp

37
user1344963

Tải xuống pscp từ trang tải xuống PuTTY , sau đó sử dụng nó từ máy Windows Windows như thế này:

pscp [email protected]_of_linux_machine:/home/ubuntu/myfile.ext C:\Users\Name\Downloads

Nó sẽ hỏi bạn về mật khẩu tên người dùng của máy Linux, sau đó thực hiện sao chép cho bạn.

50
Hesham Eraqi

Hãy thử điều này, nó thực sự hoạt động.

$ scp [email protected]_Host_ip:/home/ubuntu/myfile /cygdrive/c/Users/Anshul/Desktop

Và để sao chép tất cả các tập tin

$ scp -r [email protected]_Host_ip:/home/ubuntu/ *. * /cygdrive/c/Users/Anshul/Desktop
34

Windows không hỗ trợ SSH/SCP/SFTP nguyên bản. Bạn đang chạy một ứng dụng máy chủ SSH trên máy chủ Windows đó? Nếu vậy, một trong các tùy chọn cấu hình có thể là nơi gốc và bạn sẽ chỉ định các đường dẫn liên quan đến gốc đó. Trong mọi trường hợp, hãy kiểm tra tài liệu cho ứng dụng máy chủ SSH bạn đang chạy trong Windows.

Hoặc, sử dụng smbclient để đẩy tệp lên chia sẻ Windows.

6
theglauber

Cái này làm việc cho tôi.

scp /home/ubuntu/myfile [email protected]_of_windows_machine:/C:/Users/Anshul/Desktop 
6
emoblazz

IMHO, bạn sẽ sử dụng một cái gì đó như sau

scp -r [email protected]:Path/To/File .

. sẽ sao chép File vào thư mục mặc định cục bộ của chương trình của bạn . Ví dụ: sử dụng GitBash, việc này sẽ lưu Tệp vào thư mục công việc được định cấu hình của tôi trong ổ D :.

3
Atif Raza

Truy cập từ Windows bằng bảng điều khiển Git Bash:

scp [email protected]:/etc/../your-file "C:\Users\XXX\Download"
1
byteprom

Mã của bạn không hoạt động vì c:/hoặc d:/hoàn toàn sai đối với linux chỉ sử dụng/mnt/c hoặc/mnt/c

Từ bash windows10-ub Ubuntu cục bộ của bạn sử dụng lệnh này:

để tải xuống: (từ thư mục máy chủ từ xa của bạn đến d:/ubfox):

scp [email protected]:/folder/file.txt /mnt/d/ubuntu

Sau đó nhập mật khẩu máy chủ từ xa của bạn nếu có nhu cầu.

để tải lên: (từ d:/ubfox đến máy chủ từ xa):

scp /mnt/d/ubuntu/file.txt [email protected]:/folder/file.txt 

Sau đó nhập mật khẩu máy chủ từ xa của bạn nếu có nhu cầu . Lưu ý: Tôi đã thử nghiệm và nó đã hoạt động.

1
Baris Vvolf

Đối với tất cả, những người đã cài đặt GiT hoàn toàn với "Git Bash": Bạn chỉ có thể viết:

scp [email protected]_addres:/location/to/folders/file.tar .

(có không gian và DOT ở cuối để sao chép vào vị trí hiện tại). Hơn chỉ cần thêm chứng chỉ (y), viết mật khẩu và đó là tất cả.

0
Krzysztof Walczewski

Đây là giải pháp để sao chép các tệp từ Linux sang Windows bằng SCP mà không cần mật khẩu bằng ssh:

  1. Cài đặt sshpass trong máy Linux để bỏ qua mật khẩu Nhắc

  2. Kịch bản

    sshpass -p 'xxxxxxx' scp /home/user1/*.* [email protected]:/d/test/

Chi tiết:

sshpass -p 'password' scp /source_path/*.* [email protected]_ip:/destination_drive/subfolder/
0
Ramarajan Jothi

Tôi đã phải sử dụng pscp như trên bài đăng của Hesham sau khi tôi tải xuống và cài đặt PuTTY. Tôi đã làm điều đó với Windows từ Linux trên Windows vì vậy tôi đã nhập như sau:

c:\ssl> tên người dùng pscp @ linuxserver: keenan/ssl/*.

Điều này sẽ sao chép mọi thứ trong thư mục keenan/ssl vào thư mục cục bộ (.) Bạn đã thực hiện lệnh này từ (c:\ssl). Keenan/ssl sẽ chỉ định thư mục chính của người dùng tên người dùng, ví dụ: đường dẫn đầy đủ sẽ là/home/username/keenan/ssl. Bạn có thể chỉ định một thư mục khác bằng cách sử dụng dấu gạch chéo (/), chẳng hạn như 

c:\ssl> tên người dùng pscp @ linuxserver:/home/username/keenan/ssl/*.

Vì vậy, bạn có thể chỉ định bất kỳ thư mục nào trong thư mục gốc của Linux bằng cách sử dụng: /

Keenan

0
Keenan Stewart

Như @Hesham Eraqi đã đề xuất, nó hoạt động với tôi theo cách này (chuyển từ Ubuntu sang Windows (Tôi đã cố gắng thêm một nhận xét trong câu trả lời đó nhưng vì danh tiếng, tôi không thể)):

pscp -v -r -P 53670 [email protected]:/data/genetic_map/sample/P2_283/* \\Desktop-mojbd3n\d\cc_01-1940_data\

ở đâu:

-v: hiển thị thông báo dài dòng.
[.__.] -r: sao chép thư mục theo cách đệ quy.
[.__.] -P: kết nối với cổng được chỉ định.
[.__.] 53670: số cổng để kết nối máy chủ Ubuntu.
[.__.] \\Desktop-mojbd3n\d\genetic_map_data\: Tôi cần chuyển sang ổ cứng gắn ngoài, do đó tôi phải cấp quyền chia sẻ cho thiết bị này.

0
giannkas

Mở cửa sổ bash. Tốt nhất là git bash. viết

tên người dùng scp @ remote_ip:/library_of_file/tên tệp 'windows_location_you_want_to_store_the_file'

Thí dụ:

Giả sử tên người dùng của bạn là viên ngọc

iP của bạn là 176,35,96.32

vị trí tệp từ xa của bạn là / usr/local/forme

tên tệp của bạn là log.Zip

và bạn muốn lưu trữ trong thư mục forme ổ đĩa PC của Windows thì lệnh sẽ là

scp [email protected]: /usr/local/forme/logs.Zip 'D:/forme'

** Giữ thư mục tập tin cục bộ bên trong trích dẫn duy nhất.

0
Zenith

Để gửi tệp từ windows sang hệ thống linux

người dùng scp path-to-file @ ipaddress:/path-to-Destination

Thí dụ:

scp C:/Users/adarsh/Desktop/Document.txt [email protected]:/tmp

xin lưu ý rằng cần phải sử dụng dấu gạch chéo (/) thay cho dấu gạch chéo ngược (\) trong tệp trong đường dẫn windows nếu không nó sẽ hiển thị lỗi

C: UsersadarshDesktopDocument.txt: Không có tệp hoặc thư mục như vậy

. Sau khi thực hiện lệnh scp, bạn sẽ yêu cầu mật khẩu của người dùng root trong máy linux. Có bạn ĐI ...

Để gửi tệp từ linux đến hệ thống windows

scp -r user @ ipaddress:/path-to-file path-to-Destination

Thí dụ:

scp -r [email protected]:/tmp/Document.txt C:/Users/adarsh/Desktop/

và cung cấp mật khẩu linux của bạn. chỉ có một bạn phải thêm vào lệnh này là - r. Cảm ơn.

0
ADARSH K