Cela fera ce que vous voulez :
for f in *; do >$f; done
Vous ne pouvez pas utiliser la redirection (> ) dans find -exec directement car cela se produit avant que la commande ne s'exécute et crée un fichier appelé {} . Pour contourner ce problème, vous devez le faire dans un nouveau shell en utilisant sh -c .
Notez également que vous n'avez pas besoin de cat /dev/null > file afin de saboter un fichier. Vous pouvez simplement utiliser > file .
Essayez ceci :
find . -type f -exec sh -c '>"{}"' \;