Déplacement de plusieurs fichiers avec find et tar sur Ubuntu

J’essaie de déplacer certains fichiers .ipynb d’un répertoire vers un autre en utilisant cette commande:

find . -name "*failed.ipynb" -print0 | xargs -0 tar cvf "-" | (cd ./fails ; tar xfp "-")

La commande fonctionne correctement sous OS X et CentOS, mais lorsqu’elle est exécutée sur Travis CI sur une machine Ubuntu, elle échoue là où il y a des espaces dans les noms de fichiers.

Je pensais que les options -print0 et -0 devraient traiter de ceci, y a-t-il autre chose que je fais mal?

EDIT La sortie ressemble à ceci:

 $ source ./scripts/runipy.sh Processing science/Transients/Followup Observatories.ipynb science/Transients/Followup Observatories.ipynb failed. The following notebooks failed tar: ./science/Transients/Followup: Cannot stat: No such file or directory tar: Observatories.ipynb-failed.ipynb: Cannot stat: No such file or directory 

C’est un échec où un fichier .ipynb a un espace dans le nom de fichier.

Merci

    Pouvez-vous utiliser cpio place? Il lit les noms de fichiers de stdio, donc il n’y a pas de problèmes avec les espaces. (Bien qu’il puisse y avoir de nouvelles lignes, auquel cas il y a l’option -0 .)

     find . -name "*failed.ipynb" | cpio -pd ./fails