Bonjour
Je souhaite récupérer toutes les valeurs des arguments passés en ligne de commande et leur fair eun traitement un à un (dans une boucle for par exemple)
Du style for (i=1;i<=$#;i++)
Do
echo (arg[1])
Done
MErci
Bonjour
Je souhaite récupérer toutes les valeurs des arguments passés en ligne de commande et leur fair eun traitement un à un (dans une boucle for par exemple)
Du style for (i=1;i<=$#;i++)
Do
echo (arg[1])
Done
MErci
exemple:
- W
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for zot in $@; do echo "zot= $zot" done
Il faut mettre des guillemets autour du $@ pour protéger les espaces éventuels contenu dans les arguments
Un exemple pour expliquer cela:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for arg in "$@" do echo "arg='$arg'" done
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 set -- "arg1" "a r g 2" for arg in $@; do echo "$arg"; done # la on affiche 5 lignes set -- "arg1" "a r g 2" for arg in "$@"; do echo "$arg"; done # la on affiche deux lignes comme il faut
Partager