while read i ; do read i ; rm "$i" ; done < fichier
Ça a le mérite à la fois d'éviter d'ouvrir un sous-shell et de bufferiser tout le contenu pour l'évaluer en ligne dan le for, mais également de gérer les noms de fichiers à espace, le for i in ... utilisant l'espace comme séparateur de token. Le while le fait aussi, mais quand il ne reste qu'une variable à remplir, il met tout le restant de la ligne dedans.
[^] # Re: for qui tue
Posté par Obsidian . En réponse au message Supprimer liste de fichier en bash. Évalué à 9.
while read i ; do read i ; rm "$i" ; done < fichier
Ça a le mérite à la fois d'éviter d'ouvrir un sous-shell et de bufferiser tout le contenu pour l'évaluer en ligne dan le for, mais également de gérer les noms de fichiers à espace, le for i in ... utilisant l'espace comme séparateur de token. Le while le fait aussi, mais quand il ne reste qu'une variable à remplir, il met tout le restant de la ligne dedans.