Nom de fichier à trou: traitement par lot avec find

Bonjour,

je voudrais convertir des séries de fichiers *wav en *mp3. Les noms sont composés avec des blancs.

Je sais que find permet d’utiliser ces fichiers correctement, mais je ne retrouve plus la syntaxe. (il y a aussi une commande après un pipe dont j’ai oublié le nom).

Bonjour,
je viens de trouver:

Ce que je cherchai:
il s’agit de formater la sortie avec -print0 et de la récupérer avec xargs -0

Précisions:
lancer la commande lame avec xargs -0 ne fonctionne pas, car lame ne gère pas les fichiers à trou.
Mais il suffit d’utiliser -exec (ou -execdir) pour lancer lame ainsi:

find ./ -name "*.wav" -type f -print0 -execdir lame --nohist --preset standard "{}" \;

1 J'aime

salut
une autre solution :
find ./ -name "*.wav" -type f |while read fich ; do lame --nohist --preset standard "$fich" ; done

1 J'aime

Merci,
trés interessant cette faculté de read.

Avec read, on peut même se passer de find:

Pour un répertoire, ls :
ls -1 --color=never *.wav | while read fich ; do lame --nohist --preset standard "$fich" ; done

Pour une arborescence (tree + grep = substitut à find) :
tree -naif | grep -E wav$ | while read fich ; do lame --nohist --preset standard "$fich" ; done