Appliquer un scrypte sur des fichiers
Fermé
Fabien
-
20 mars 2009 à 01:22
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 20 mars 2009 à 02:41
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 20 mars 2009 à 02:41
5 réponses
tuxun
Messages postés
357
Date d'inscription
vendredi 13 mars 2009
Statut
Membre
Dernière intervention
16 décembre 2010
34
20 mars 2009 à 01:36
20 mars 2009 à 01:36
Salut
utilise une des "redirection" offertes par ton shell...
en gros tu fais un fichier "listdefichiers" un autre contenant le script, puis tu passe "listedefichier" au scripte...
recherche "redirection shell" ou "pipe shell" sur google!
c'est une technique très puissante, il va falloir que je la réapprenne d'ailleurs...
Tu pourra posté ton résultat stp?
cdt,
TuXuN
utilise une des "redirection" offertes par ton shell...
en gros tu fais un fichier "listdefichiers" un autre contenant le script, puis tu passe "listedefichier" au scripte...
recherche "redirection shell" ou "pipe shell" sur google!
c'est une technique très puissante, il va falloir que je la réapprenne d'ailleurs...
Tu pourra posté ton résultat stp?
cdt,
TuXuN
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
20 mars 2009 à 01:45
20 mars 2009 à 01:45
Salut,
Pourquoi ne pas mettre tout simplement :
Sinon, pour quand même répondre à la question, tu peux utiliser la variable $# qui contient le nombre d'arguments. Et $* retourne la liste.
Cdlt
Pourquoi ne pas mettre tout simplement :
$ sed -i 's/oui/non/g' fichier1 fichier4 fichier 5 fichier3 test2 test5
Sinon, pour quand même répondre à la question, tu peux utiliser la variable $# qui contient le nombre d'arguments. Et $* retourne la liste.
Cdlt
tuxun
Messages postés
357
Date d'inscription
vendredi 13 mars 2009
Statut
Membre
Dernière intervention
16 décembre 2010
34
20 mars 2009 à 01:49
20 mars 2009 à 01:49
"Ne sachant pas le nombre de fichiers sur lesquels que je demande à effectuer la substitution, je ne peux pas exécuter ce genre de scrypte. "
Je pense que sa liste de fichier et retourné par une autre commande...
Je pense que sa liste de fichier et retourné par une autre commande...
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
20 mars 2009 à 01:53
20 mars 2009 à 01:53
Non, je ne pense pas. Puisque :
j'ai besoin d'un scrypt qui, lorsque je tape en ligne de commande la ligne suivant :
$ sh modif.sh fichier1 fichier4 fichier 5 fichier3 test2 test5
C'est juste qu'il disait que dans son script, il ne pouvait pas mettre sed $1 puis sed $2 etc, puisqu'il ne savait pas le nombre de fichiers. D'où $#.
Mais si le cas (liste de fichiers récupérée d'une commande), il peut très bien piper et utiliser xargs sed ...
j'ai besoin d'un scrypt qui, lorsque je tape en ligne de commande la ligne suivant :
$ sh modif.sh fichier1 fichier4 fichier 5 fichier3 test2 test5
C'est juste qu'il disait que dans son script, il ne pouvait pas mettre sed $1 puis sed $2 etc, puisqu'il ne savait pas le nombre de fichiers. D'où $#.
Mais si le cas (liste de fichiers récupérée d'une commande), il peut très bien piper et utiliser xargs sed ...
tuxun
Messages postés
357
Date d'inscription
vendredi 13 mars 2009
Statut
Membre
Dernière intervention
16 décembre 2010
34
20 mars 2009 à 02:07
20 mars 2009 à 02:07
1pt pour fiddy!!! xD
Tu pourrai nous mettre quelques ex de pipes bien tordu?
J'essaie souvent de "pipe" masse de truc louche d'affilées ;)
et a presque chaque fois il y a un probleme...(mauvais comportement)
Ca nous aiderait surement moi et http://www.commentcamarche.net/forum/affich 11614051 commande linux red hat
cdt,
tuxun
Tu pourrai nous mettre quelques ex de pipes bien tordu?
J'essaie souvent de "pipe" masse de truc louche d'affilées ;)
et a presque chaque fois il y a un probleme...(mauvais comportement)
Ca nous aiderait surement moi et http://www.commentcamarche.net/forum/affich 11614051 commande linux red hat
cdt,
tuxun
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
20 mars 2009 à 02:41
20 mars 2009 à 02:41
Il n'y a pas de trucs tordus avec les pipes. Il faut juste garder à l'esprit que ça sert pour injecter la sortie d'une commande dans l'entrée d'une autre commande.
Par exemple :
cat fichier t'affichera à l'écran le contenu de fichier.
cat fichier | wc -l t'affichera le nombre de lignes contenues dans fichier. cat fichier est censé afficher le contenu du fichier, mais le pipe va permettre de rediriger l'affichage et de le mettre en entrée de wc -l qui comptera le nombre de lignes.
Cdlt
Par exemple :
cat fichier t'affichera à l'écran le contenu de fichier.
cat fichier | wc -l t'affichera le nombre de lignes contenues dans fichier. cat fichier est censé afficher le contenu du fichier, mais le pipe va permettre de rediriger l'affichage et de le mettre en entrée de wc -l qui comptera le nombre de lignes.
Cdlt