Retourner aux forums || Retourner au forum Programmation.shell
Programmation.shell : Supprimer liste de fichier en bash
Posté par alfafa () le 26 mai 2008J'ai vu cette astuce plusieurs fois sur des forums, mais ne l'ayant jamais utilisée, je ne l'ai pas retenue.
J'ai enregistré une liste de fichier dans un fichier texte a_supp.lst
J'aimerais effacé les fichiers contenus dans ce fichier texte par une ligne bash.
Il y a un nom de fichier par ligne.
Merci pour votre aide, google ne m'a pas beaucoup aidé, les réponses sont trop larges.
> Lire le message (14 commentaires, moyenne: 3,1).
ca ressemble à un devoir...
en francais dans le texte (en algorythmie quoi)
boucler POUR chaque fichier PROVENANT de la liste
FAIRE
effacer le fichier
FIN de la boucle
autrement dit,
va lire ton cours...
Apprendre par les autres, c'est bien.
Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux
-
[^]Re: ca ressemble à un devoir...
Posté par mekare () le 26/05/2008 à 17:27. (lien). Évalué à 4.autrement dit,
va lire ton cours...
Un peu facile comme réponse. Un lien vers un manuel ou un tuto ne serait pas du luxe. Tout le monde ici n'a pas forcément eu la chance d'avoir eu des cours de shell ou de dev dans sa vie (j'en fait partie et recevoir des réponses de ce genre ne fait pas avancer car on ne sais même pas où chercher). Je sais que quelqu'un a mis la réponse plus bas, mais pour l'auteur du post c'est je pense à lire (voir "Boucle for") : http://www-gtr.iutv.univ-paris13.fr/Cours/Mat/Systeme/TDTP20(...)
for qui tue
for i in `cat fichier`;do rm $i;done
par exemple.
Good judgement comes from experience and experience comes from bad judgement |
Faisez la mouche pas la guêpe...
-
[^]Re: for qui tue
Posté par Obsidian () le 26/05/2008 à 16:09. (lien). Évalué à 9.Ou encore
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 furai (page perso, ) le 26/05/2008 à 16:22. (lien). Évalué à 3.Ou faire confiance à bash :
rm $(cat a_supp.lst)
Résultat : pas de for, pas de while...-
[^]Re: for qui tue
-
-
Revenir en haut de page || Retourner aux forums || Retourner au forum Programmation.shell



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.