La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Master 1ère année Sécurité des Systèmes d’Information 1 Programmation en shell.

Présentations similaires


Présentation au sujet: "Master 1ère année Sécurité des Systèmes d’Information 1 Programmation en shell."— Transcription de la présentation:

1 Master 1ère année Sécurité des Systèmes d’Information 1 Programmation en shell

2 Master 1ère année Sécurité des Systèmes d’Information 2 Shell Test sur une chaîne de caractères OK si les deux chaînes sont différentes != chaîne : OK si les deux chaînes sont identiques = non zero, retour OK si la variable n'est pas vide (texte quelconque)‏ -n zéro, retour OK si la variable est vide (ex test -z "$a")‏ -z

3 Master 1ère année Sécurité des Systèmes d’Information 3 Shell Test sur une chaîne de caractères  Exemple: #!/bin/sh PROG=`basename $0.sh` if [ ”$PROG” = ”isomount” ]; then elif [ ”$PROG” = ”isoumount” ]; then else fi

4 Master 1ère année Sécurité des Systèmes d’Information 4 Shell Test sur les valeurs numériques Greater than : supérieur-gt Greater or equal : supérieur ou égal-ge Less ou equal : inférieur ou égal-le Less than : inférieur-lt Not Equal : Différent-ne Equal : Egal-eq

5 Master 1ère année Sécurité des Systèmes d’Information 5 Shell Test sur les valeurs numériques  Exemple: #!/bin/sh kill -0 $PID if [ ”$?” –eq 0 ]; then else fi

6 Master 1ère année Sécurité des Systèmes d’Information 6 Shell Test sur les fichiers Autorisation en écriture-w Etc… Autorisation en exécution-x Autorisation en lecture-r Un répertoire-d Fichier normal-f

7 Master 1ère année Sécurité des Systèmes d’Information 7 Shell Test sur les fichiers  Exemple: #!/bin/sh DIR=/root/SOURCES if [ ! -d ”$DIR” ]; then mkdir $DIR fi

8 Master 1ère année Sécurité des Systèmes d’Information 8 Shell Test combiné Pour regrouper les combinaisons les parenthèses doivent être verrouillées par des \ \(...\). (…)‏ NOT, NON logique! OR, OU logique-o AND, ET logique-a

9 Master 1ère année Sécurité des Systèmes d’Information 9 Shell  if... then... else  La structure « if then else fi » est une structure de contrôle conditionnelle. if then else fi Structure de contrôle conditionnelle

10 Master 1ère année Sécurité des Systèmes d’Information 10 Shell  Exemple: PROG=`basename $0.sh` if [ $PROG == "backup" ]; then echo "Procédure de sauvegarde" elif [ $PROG == "restore" ]; then echo "Procédure de restauration" fi Structure de contrôle conditionnelle

11 Master 1ère année Sécurité des Systèmes d’Information 11 Shell  case... esac case Valeur in Modele1) Commandes ;; Modele2) Commandes ;; *) Commandes si la valeur ne correspond à aucun modèles ;; esac Structure de contrôle conditionnelle

12 Master 1ère année Sécurité des Systèmes d’Information 12 Shell Caractères spéciaux Négation de la plage de caractères[!...] OU logique| Une plage de caractères[…] Un seul caractère? Chaîne variable (même vide)*

13 Master 1ère année Sécurité des Systèmes d’Information 13 Shell case "$1" in -p|-package)‏ shift PAQUETAGE=$1 shift ;; … *)‏ echo $"Usage: $0 -p [-v |-r |-c |-t ]" echo Example: $0 -p avldisplay-database -v 0.8 -c \"Modification du fichier \/usr\/share\/avldisplay\/nodomain.ldif\" echo " "$0 -p avldisplay-database -r 2 -c \"Modification du script de post installation\" exit 1 esac

14 Master 1ère année Sécurité des Systèmes d’Information 14 Shell  for... in … do …; …; done for in do Commande 1 ; Commande 2 ; … done Structure de contrôle, boucle

15 Master 1ère année Sécurité des Systèmes d’Information 15 Shell for fichier in *.ps do dest=`basename $fichier.ps` echo Conversion de $fichier en $dest.pdf ps2pdf $fichier done

16 Master 1ère année Sécurité des Systèmes d’Information 16 Shell  while... do …; …; done while do Commande 1 ; Commande 2 ; … done Structure de contrôle, boucle

17 Master 1ère année Sécurité des Systèmes d’Information 17 Shell #!/bin/sh fonction() { echo Exécution de la fonction 1 exit 5 } trap fonction SIGUSR1 COMPTEUR=0 while true do sleep 1 COMPTEUR=$(( $COMPTEUR + 1 ))‏ echo $COMPTEUR done

18 Master 1ère année Sécurité des Systèmes d’Information 18 Shell  until... do …; …; done until do Commande 1 ; Commande 2 ; … done Structure de contrôle, boucle

19 Master 1ère année Sécurité des Systèmes d’Information 19 Shell until [ $# -gt 0 ] do case "$1" in -1|-oneserver)‏ shift SRVNAME=$1 shift ;; -2|-twoserver)‏ shift SRVNAME=$1 shift ;; esac done


Télécharger ppt "Master 1ère année Sécurité des Systèmes d’Information 1 Programmation en shell."

Présentations similaires


Annonces Google