encontre e mova arquivos sem sobrescrever e com saída

encontre e mova arquivos sem sobrescrever e com saída

Estou tentando encontrar e mover alguns arquivos de/home/usuário/fol1para/home/usuário/fol2.

Geralmente eu usaria

find . -type f -name "abc*" -exec mv -t "/path/to/foo/bar" {} +

mas isso substitui arquivos com os mesmos nomes já presentes em/caminho/para/foo/bar.
Quero que ele pule os arquivos, se já estiverem presentes lá.

Se isso exigir um loop, também preciso de uma saída simples no shell ou em um arquivo de log.

Alguma ideia?

Responder1

Você pode usar na opção:

find . -type f -name "abc*" -exec mv -nt "/path/to/foo/bar" "{}" +

De man mv:

-n, --no-clobber
          do not overwrite an existing file

Responder2

Estou usando o Mac Terminal e este comando está dando bons resultados:

encontre FIle_Origin -type f -name "Nome_Arquivo" -exec mv {} Destino_Arquivo/ ;

informação relacionada