Sao chép tập tin với các phần mở rộng nhất định với scp


19

Tôi muốn sao chép .jpg.pngcác tệp với scp, nhưng có các tệp có phần mở rộng khác nhau trong cùng một thư mục tôi đang sao chép. Tôi đang làm như sau:

scp user@someRemoteHost.com:/folder/*.{jpg,png} .

Tôi được yêu cầu nhập mật khẩu cho từng loại tiện ích mở rộng. Có cách nào để làm điều này theo cách mà tôi chỉ nhập mật khẩu của mình một lần không?

Câu trả lời:


31

Chỉ cần thay thế nó bằng:

scp user@someRemoteHost.com:'/folder/*.{jpg,png}' .

Xin lưu ý các cặp dấu ngoặc đơn. Trong trường hợp của bạn, shell cục bộ của bạn đang đánh giá biểu thức, biến nó thực sự thành:

scp user@someRemoteHost.com:/folder/*.jpg user@someRemoteHost.com:/folder/*.png .

do đó hai mật khẩu hỏi. Trong giải pháp này, cặp dấu ngoặc đơn bảo vệ nó khỏi sự đánh giá của shell cục bộ, do đó, nó là shell từ xa được gọi bởi scp (remote) đang đánh giá biểu thức.


Làm thế nào tôi có thể bao gồm tất cả các thư mục con của thư mục đó?
xxx ---

@ Pushpen.paul Nếu bạn không cần chỉ chọn các tệp png và jpg nhưng muốn sao chép mọi thứ, thì sử dụng ví dụ scp -r user@someRemoteHost.com:'/folder' . nên làm điều đó. Khác nếu bạn vẫn chỉ muốn sao chép png và jpg trong các thư mục con đó, bạn có thể không thể sử dụng scp hoặc sftp (trừ khi sftp / lftp với tập lệnh tùy chỉnh có thể) nhưng cần phải chạy một cái gì đó như ssh + một cặp tar thay thế. Bạn sẽ phải đặt câu hỏi của riêng bạn với các nhu cầu cụ thể sau đó.
AB

7

Tốt hơn để sử dụng rsync để sao chép hoạt động giữa các máy chủ.

 rsync -avzh user@remoteip:/path/*.jpg user@192.168.159.155:/path/*.png localserverpath

Sử dụng rsync, nó sẽ yêu cầu mật khẩu chỉ một lần.

Ngoài ra trong rsync trong khi truyền tệp, nó sẽ kiểm tra vị trí đích nếu tệp tồn tại hay không và cũng kiểm tra xem nội dung có giống nhau hay không ở vị trí nguồn và vị trí đích.

Nếu tệp cũng tồn tại ở vị trí đích và nội dung cũng giống nhau, thì nó sẽ không sao chép tệp đó. Nó sẽ chỉ sao chép các tệp không tồn tại ở vị trí đích, do đó sẽ giảm thời gian xử lý.

rsync thường được sử dụng như một công cụ sao lưu gia tăng.


8
Không có vấn đề nếu sử dụng rsynchoặc scp, vấn đề là /folder/*.{jpg,png}nên trích dẫn '/folder/*.{jpg,png}' .
αғsнιη
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.