Yanıtlar:
Aşağıda belirtilen seçeneklerden birini kullanarak find çıktısını rsync'e gönderebilirsiniz.
Bu 2 seçenek çok benzer, ikisi de dizinleri bir yere değiştirdiğinizi ve sonra find
komutu oradan çalıştırdığınızı varsayıyor .
$ rsync -avz --remove-sent-files \
--files-from=<(find ./ -mtime +14 -size +10k) ./ /dest
Listeyi beslemek için bir boru da kullanabilirsiniz:
$ find ./ -mtime +14 -size +10k -print0 \
| rsync -av --files-from=- --from0 ./ /dest
Bu yöntem her yerden çalıştırılabilir.
$ find /src/dir/ -mtime +14 -size +10k -printf %P\\0 \
| rsync --files-from=- --from0 /src/dir/ /dst/dir/
printf %P
: Dosyanın, kaldırıldığı bulunduğu komut satırı argümanının adı. Bu şekilde, herhangi bir src dizinini kullanabilirsiniz, önce src dizininize cd girmenize gerek yoktur.