lftp sao chép tập tin từ thư mục này sang thư mục khác


1
  1. Tôi tải xuống tất cả các tập tin trong dir1 / từ xa.
  2. Chúng được tải xuống một thư mục chứa hàng trăm tệp.
  3. Tôi cần phải sao chép tập tin vào một thư mục "lưu trữ" từ xa.
  4. Tôi cần xóa tập tin từ dir1 / (ở trên).

Tôi gặp khó khăn khi tìm cách chuyển tệp từ dir1 / tệp sang dir2 / bằng giao thức sftp.

Tôi "đã cố gắng lftpvì tôi cần phải cung cấp mật khẩu không tương tác, và khóa công khai / riêng không có sẵn cho tôi. sftp'S renamecó sẵn, nhưng nó đòi hỏi public / private key auth.

Tôi không thể sử dụng lftp's ftpcopy, cphoặc mv. Trong trang người đàn ông, getcó vẻ đầy hứa hẹn:

get README -o ftp://some.host.org/debian-dir/

Nhưng xác thực thất bại (giả sử "không có mật khẩu").

Bởi vì tôi đang sử dụng cùng một máy chủ, sẽ rất tuyệt nếu lftpchỉ sử dụng cùng thông tin đăng nhập mà tôi hiện đang sử dụng để đăng nhập vào máy chủ hiện tại. Nhưng than ôi ...

Có cách nào để sử dụng mật khẩu cho getlệnh không? Có cách nào tốt hơn để làm điều này?

Tôi không tin rằng rsyncnó hữu ích ở đây ...

Nếu nó giúp, tôi tin rằng máy chủ SFTP là một hộp Windows.


Để sử dụng mật khẩu với OpenSSH sftp, hãy xem stackoverflow.com/questions/5386482/ Kẻ
Martin Prikryl

"Sẽ thật tuyệt nếu lftp chỉ sử dụng cùng thông tin đăng nhập mà tôi hiện đang sử dụng để đăng nhập vào máy chủ hiện tại" : Vậy bạn cần SFTP để làm gì, nếu bạn đã đăng nhập vào máy chủ? Sử dụng các lệnh sao chép tệp cục bộ (máy chủ) ( copytrên Windows).
Martin Prikryl

Tôi không đăng nhập vào máy tính để bàn Windows ... Tôi đã xác thực với sftpvới sftpmáy chủ.
Felipe Alvarez

Tôi biết sshpassvà chúng tôi đang xem đây là một lựa chọn thay thế. Tôi chỉ tự hỏi liệu có cách nào khác mà tôi chưa xem xét.
Felipe Alvarez

Vì vậy, những gì sai về sshpass? Tại sao nó chỉ thay thế cho bạn? Hãy làm cho câu hỏi của bạn rõ ràng hơn. Ngoài ra, bạn cần phải sao chép ( get) hoặc di chuyển các tập tin? Tại sao bạn không thể sử dụng lftp's mvlệnh?
Martin Prikryl

Câu trả lời:


0

@Felipe - Tôi không biết mình đang hút thuốc gì khi đăng bình luận của mình, tôi không thể tin rằng mình đã không gõ xong bài viết của mình, xin lỗi về điều đó.

Khi tôi đang cố gắng để lftp hoạt động để chuyển các tập tin giữa máy chủ từ xa và máy tính cục bộ của tôi, tôi gặp phải sự cố xác thực sau khi khởi động lftp, tôi có thể kết nối thành công với máy chủ của mình bằng lftp nhưng tôi không thể chạy bất kỳ lệnh nào, mọi thứ sẽ diễn ra như ví dụ dưới đây.

lftp 222.222.222.222:~> ls
'ls' ở 0 [Kết nối ...]
'ls' ở 0 [Trì hoãn trước khi kết nối lại: 35]

Thoát khỏi lftp và quay lại dòng lệnh bình thường, sau đó thử kết nối với ssh bằng lệnh này, nhập mật khẩu của bạn nếu được nhắc -

ssh -p PORT # tên người dùng@xxx.xxx.xxx.xxx

Nếu bạn có thể kết nối với máy chủ từ xa của mình và có thể liệt kê nội dung của thư mục hiện tại, giờ đây bạn có thể sử dụng lftp mà không gặp lỗi hết thời gian 'kết nối'.

Tôi đã đính kèm tập lệnh tôi sử dụng để chuyển tập tin / thư mục giữa máy tính từ xa và cục bộ. Kịch bản không hoàn thành hoàn chỉnh nhưng nó hoạt động như dự định. Hãy nhớ chỉnh sửa máy chủ, cổng #, tên người dùng / mật khẩu, thư mục cục bộ và từ xa (ngoài ra các dòng 23,24 và 25 có thể cần được nhận xét, nhưng đừng thử trừ khi bạn gặp sự cố)

Tại một số điểm, tôi muốn tập lệnh có thể lấy danh sách các thư mục từ một tệp văn bản khác và sau đó chuyển từng thư mục được liệt kê vào máy tính cục bộ của tôi, tuy nhiên, tìm thấy và chỉnh sửa cho các nhu cầu của tôi chạy tập lệnh được đính kèm trong liên kết bên dưới.

Để xóa các tệp khỏi máy chủ từ xa sau khi chuyển, bạn có thể sử dụng cờ này với lệnh nhân bản.

'gương --remove-source-files'

lftp-mirror.sh - kịch bản

Hướng dẫn sử dụng LFTP có thể hữu ích với việc nhận lệnh và giải thích đúng cho tình huống cụ thể của bạn.

Hướng dẫn sử dụng

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.