linux - with - shell script cli parameters




Comment passer des paramètres à un script Linux Bash? (3)

J'ai un script bash Linux 'myshell'. Je veux qu'il lit deux dates en tant que paramètres, par exemple: myshell date1 date2 . Je suis un programmeur Java, mais je ne sais pas comment écrire un script pour y parvenir.

Le reste du script est comme ça:

sed "s/$date1/$date2/g" wlacd_stat.xml >tmp.xml
mv tmp.xml wlacd_stat.xml

0 $ 1 $ 2 $

Et ainsi de suite contiendra le nom du script, puis le premier et le deuxième argument de ligne.


Les arguments Bash sont nommés d'après leur position.

De plus, si vous avez besoin de gérer un argument après l’autre, vous pouvez les décaler et toujours utiliser $1 :

while [ $# -gt 0 ]
do
    echo $1
    shift
done

vous utilisez $1 , $2 dans votre script par exemple

date1="$1"
date2="$2"
sed "s/$date1/$date2/g" wlacd_stat.xml >temp.xml ;mv temp.xml wlacd_stat.xml #Semicolon can also replaced with a newline




shell