find ./dir -type f -iname "*.t[argz]*[bz2]" -print | xargs mv --target-directory=dir
semble échouer sur le fichier qui a des espaces dans le nom. comment l'améliorer? ou alternative?déplacer des fichiers de manière récurrente sur Linux
merci pour réponse ci-dessous: mon mv ne supporte pas --null ou -0, j'utilise Cygwin:
$ mv --help Usage: mv [OPTION]... [-T] SOURCE DEST or: mv [OPTION]... SOURCE... DIRECTORY or: mv [OPTION]... -t DIRECTORY SOURCE... Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY. Mandatory arguments t .
$ find ./ -type f -iname "* .xls" -print0 | xargs mv --null --target-directory = x ls xargs: Attention: un caractère NUL est apparu dans l'entrée. Il ne peut pas être passé par le dans la liste des arguments. Vouliez-vous utiliser l'option --null? Mv: option non reconnue '--null ' Essayez' mv --help' pour plus d'informations. – user217631
Désolé - aurait dû être une option xargs, pas une option mv! Fixé. –