Je suis d'accord avec les autres réponses concernant la façon correcte de boucler les fichiers. Cependant, le PO a demandé :
Le code ci-dessus ne fonctionne pas, savez-vous pourquoi ?
Oui !
Un excellent article [Quelle est la différence entre test, [ et [[ ?]?](http://mywiki.wooledge.org/BashFAQ/031) explique en détail que, parmi d'autres différences, vous ne pouvez pas utiliser expression matching
ou pattern matching
au sein de la test
(qui est un raccourci pour [
)
Feature new test \[\[ old test \[ Example
Pattern matching = (or ==) (not available) \[\[ $name = a\* \]\] || echo "name does not start with an 'a': $name"
Regular Expression =~ (not available) \[\[ $(date) =~ ^Fri\\ ...\\ 13 \]\] && echo "It's Friday the 13th!"
matching
C'est donc la raison pour laquelle votre script échoue. Si le PO est intéressé par une réponse avec l'option [[
(qui a l'inconvénient de ne pas être supportée sur autant de plateformes que la syntaxe [
), je serais heureux de modifier ma réponse pour l'inclure.
EDIT : Tout conseil sur la façon de formater les données dans la réponse sous forme de tableau serait utile !