Câu trả lời:
Bạn có thể gửi đầu ra của tìm kiếm vào rsync bằng một trong các tùy chọn được nêu dưới đây.
Hai tùy chọn này rất giống nhau, cả hai đều cho rằng bạn đang thay đổi thư mục sang một số vị trí và sau đó chạy find
lệnh từ đó.
$ rsync -avz --remove-sent-files \
--files-from=<(find ./ -mtime +14 -size +10k) ./ /dest
Bạn cũng có thể sử dụng một đường ống để cung cấp danh sách trong:
$ find ./ -mtime +14 -size +10k -print0 \
| rsync -av --files-from=- --from0 ./ /dest
Phương pháp này có thể được chạy từ bất cứ đâu.
$ find /src/dir/ -mtime +14 -size +10k -printf %P\\0 \
| rsync --files-from=- --from0 /src/dir/ /dst/dir/
printf %P
: Tên tệp với tên của đối số dòng lệnh mà theo đó nó được tìm thấy đã bị xóa. Bằng cách này, bạn có thể sử dụng bất kỳ thư mục src nào, không cần phải cd vào thư mục src của bạn trước.