J'aimerai modifier un script pour que la variable INFILELOG soit prise dans la ligne de commande du lancement du script .
Actuellement, que je lance le script il me demande quel fichier je veux charger avec ce code :
echo "flexCount Running"
echo " "
printf "FlexLM log filename : "
read INFILELOG
J'aimerai lancer le script de façon suivante ;
#~: script.sh Fichier_à_charger.log
J'ai essayé les man de la commande read sans succès
Merci de votre aide
# man bash
Posté par tuxyl . Évalué à 3.
# Paramètres en ligne de commande
Posté par Kerro . Évalué à 4.
script.sh parametre1 parametre2 parametre3
Ton script doit juste contenir $1 pour "lire" le premier paramètre, $2 pour le second, ect.
exemples:
echo $1
cp $2 /sauvegardes
scp utilisateur@serveur.domaine.com:$3 $4
MAVARIABLE=$5
if [ -r $6 ]; then .....
[^] # Re: Paramètres en ligne de commande
Posté par totof2000 . Évalué à 3.
Si tu as plus de 9 parametres il faut faire un truc du genre
for i in $*
do
traitement des parametres
done
ou alors : param1=$1; shift
param2=$1;shift
[^] # Re: Paramètres en ligne de commande
Posté par B. franck . Évalué à 3.
d'où l'utilité des accolades...
echo ${10}
[^] # Re: Paramètres en ligne de commande
Posté par totof2000 . Évalué à 2.
De toute façon, j'ai l'habitude de ne pas rendre les parametres que je passe au shell dépendants de leur position ...
[^] # Re: Paramètres en ligne de commande
Posté par totof2000 . Évalué à 2.
[^] # Re: Paramètres en ligne de commande
Posté par B. franck . Évalué à 1.
bah en *shell, le contenu d'une variable ça a toujours été:
${NOM_DE_LA_VARIABLE}
[^] # Re: Paramètres en ligne de commande
Posté par dubis . Évalué à 1.
Merci beaucoup de votre aide
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.