Définition d’un script
Un script est un fichier texte contenant à une série de commandes qui peuvent être exécutées
séquentiellement par l’interpréteur de commande shell.
Les scripts sont souvent utilisés pour automatiser des tâches répétitives, configurer des systèmes ou ,
exécuter des programmes avec des options prédéfinies.
Script2
#!/bin/bash
# 09_affiche_arguments_spé[Link]
echo "Nom du script $0"
echo "Sremier paramètre $1"
echo "Second paramètre $2"
echo "Tous les paramètres $*"
echo "Tous les paramètres (préservant des espaces) $@"
echo "Nombre de paramètres $#"
echo "PID du shell $$"
echo "code de retour $?"
exit
Voici ce que fait chaque ligne de ce script
« #!/bin/bash » indique le script doit être exécuter par l’interpréteur Bash
« # 09_affiche_arguments_spé[Link] » c’est juste pour documenter le script
« echo » permet d’afficher les arguments développés entre les lignes
Voici les captures de l’exécution du script2 sous ubuntu
Nous avons ouvert l’éditeur de texte via la commande nano script2 pour définir le
programme qu’on voulait exécuter.
Le programme à exécuter
Puis nous avons donné notre script2 le droit d’exécution via la commande chmod +x script2
Enfin nous avons exécuter le script avec la commande sh script2.
Dans l’exécution de ce script nous les ligne qui étaient devant le echo donc ce script nous
permet d’afficher les informations relatives aux arguments passées dans ligne des
paramètres
Script3
#!/bin/bash
if test $# -eq 0
then
echo il faudrait fournir un paramètre sur la ligne de commande
echo par exemple, lancez : $0 bonjour mon beau script
exit 1
fi
echo le premier paramètre est : $1
if test "$2" = ''
then
echo "il n'y a pas d'autres paramètres"
else
echo vous avez aussi fourni : $2
fi
Comme le script2, ce script est conçu avec un peu même les commande du script2, la seule
différence se trouve au niveau des contenus.
Edition du script3
Le droit d’exécution du script3
Ainsi le scrit3 est exécuté avec sh script3.
Nous avons le message argumenter sur notre script3 voir l’image en bas
Script du backup
#!/bin/bash
rsync -azurvl --delete /home root@[Link]::backupData77 |tee /backupHome
echo "backup du serveur 77 Home" >>/backupHome
date >> /backupHome
mail -s 'backup du serveur 77 Home' -c oba@[Link],pmdieng@[Link] < /backupHome
cat /backupHome |mail -s 'backup du serveur 77 Home' oba@[Link],pmdieng@[Link]
cat /dev/null > /backupHome
Ce script Bash est utilisé pour effectuer une sauvegarde du répertoire /Home vers un serveur
distant à l’aide de l’outil rsync et pour notifier par email le résultat de cette sauvegarde.
NB : lors de l’exécution de ce script, nous avons un message qui nous dit que :
Email not found
pmdien@[Link] not found
backup not found