Cette structure pose un gros problème car le "for" utilise l'espace comme séparateur. Et dans le cas où un des fichiers possède un espace dans son nom, le "for" fera alors 2 itérations en découpant le nom sur la 1ère partie puis la 2° partie mais aucune itération ne traitera le fichier lui-même. Au final, il restera non traité
Solution permettant d'éviter cela: utiliser le "read" qui se base sur le "return" pour découper ses infos.
ls $REP_SOURCE |while read FICHIER do
...
done |
Inconvénient: comme le pipe génère un sous-processus, si on implémente une variable (style un compteur) dans le "do", elle est perdue en fin de "done" car le processus disparaît et ses variables avec...
---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.