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

Slides:



Advertisements
Présentations similaires
Prmt For imbriqués.
Advertisements

La boucle for : init7.c et init71.c
Programmation Tcl/Tk Raymond Ripp février 2012 Survol général
Raymond Ripp 5 mars 2013 la deuxième partie sera pour le 12 mars
Programmation Tcl Raymond Ripp 7 février 2012 deuxième partie du 14 février dans ce même ppt Survol général o Applications et Protocoles o Windows Linux.
Synchronisation des processus père - fils
Création de Pages Web Dynamiques
Historique 1970 Développement dans un laboratoire de recherche Bell (Kernighan, Ritchie, Thompson) parallèlement au langage C Diffusion gratuite aux.
Calcul numérique (avec Maple)
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Les commandes Unix.
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
CPI/BTS 2 Programmation Web Introduction au PHP
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Expressions et assignations
Quelques algorithmes sur calculatrices
Algèbre de Boole et les Boucles
Structures de données IFT Abder Alikacem La classe string Département dinformatique et de génie logiciel Édition Septembre 2009 Département dinformatique.
Les Fonctions. Définir une fonction Sections de code indépendantes que lon peut appeler à nimporte quel moment et dans nimporte quel ordre. Bout de code.
Introduction à la programmation I Fonctions Structures de contrôle Structures de données (arrays simples et indexés) Variables locales et globales.
1 GPA435 Systèmes dexploitation et programmation de système Copyright, 2000 © Tony Wong, Ph.D. Chapitre 9 Exemples de programmation Bourne shell et nawk(1)
GPA435, GPA – ÉTS, T. Wong Génie de la production automatisée GPA435 Système dexploitation et programmation de système Chapitre 6 Partie II 2014.
GPA435, GPA – ÉTS, T. Wong Génie de la production automatisée GPA435 Système dexploitation et programmation de système Chapitre 6 Partie I 2014.
Systèmes dexploitation et programmation de systèmes -GPA435- Cours #5: Éléments de programmation (Partie 2) Enseignant: Jean-Philippe Roberge Jean-Philippe.
Systèmes d’exploitation et programmation de systèmes -GPA435- Cours #4: Éléments de programmation (Partie 1) Enseignant: Jean-Philippe.
CSI3525: Concepts des Langages de Programmation
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
Instructions de contrôle
Formulaires, CGI et PHP David Gross-Amblard (CNAM-Vertigo/Cédric) Transparents originaux : Philippe Rigaux Projet 3I
L3 Module Libre Année universitaire Initiation à la Bioinformatique Jean-Michel RICHER.
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
1 GPA435 Systèmes d’exploitation et programmation de système Copyright, 2000 © Tony Wong, Ph.D., ing. Chapitre 6 Substitution: variables et commandes,
Structures alternative et répétitive
Animateur : Med HAIJOUBI
Utilisation avancée de linux
PHP & My SQL.
Shell Equipe ID Bioinformatics Training Course June 2014.
3 Les instructions. Cours 32 Plan du cours 3 Instruction Bloc Portée L’alternative Affectations =, +=, *=… Comment comparer –Comparer des réels –Comparer.
Boucles et Tests For( in ) { } While( ) { } Les exécutions conditionnelles (if.. else) peuvent être évitées avec des indexations logiques. Exemples: y=numeric(length(x));
Scripts shell intro Un script bash est un fichier contenant une suite de commandes shell, exécutables par l'interpréteur (ici le programme /bin/bash),
1 Algorithmique et programmation en Itérations (boucles) Types numériques simples (suite)
Boîtes de dialogue sous bash La commande dialog permet d'utiliser onze boîtes de dialogues différentes dans les shell scripts L'historique de cette commande.
Algorithmique et programmation en
Créer des packages.
Un survol du language C.
Interactions entre Processus
 Syntaxe du langage PHP
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Utilisation avancée de linux Réseau Démarrage et arrêt.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Correction du TD Chapitre 4.
Le langage Racket (Lisp)
Cours n° 3 Traitements en Java
Les structures conditionnelles en PHP
Variables et environnement utilisateur W. Barhoumi.
Fiabilisation des lectures au clavier. Problèmes liés à scanf: rencontre de caractères invalides Sans arrêt prématuré: compte = scanf(``%d%c``;&n,&c);
1 Système d’exploitation Les scripts csh 1 ère Année Année Tienté HSU.
Les variables fichiers. Le type fichier On manipule les fichiers par l’intermédiaire de structures FILE décrites dans stdio.h FILE *monFichier; –Nom physique.
1 PHP 5 Notions fondamentales (niveau 1 – cours #2) Formation continue – Cégep de Sainte-Foy.
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Initiation au web dynamique Licence Professionnelle.
Copyright © SUPINFO. All rights reserved Scripting BASH Simplification d’administration campus-Booster ID : **XXXXX.
Module 133 Développer des applications Web Introduction à PHP.
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
Scripts et fonctions Instructions de contrôle
Master 1ère année Sécurité des Systèmes d’Information 1 Programmation en shell.
Algorithmique Algorithmique  Pascal
FLASH Séance 2 Xiaoliang Liang Morgane Le Nan SI28 P05.
PhP 2. Tableaux et structures de contrôle. Les tableaux Définition –Rassemblement d’un ensemble de valeurs portant le même nom de variable –Types de tableaux.
TP1 INFO Suite Equation du 2 nd degré. GteInfoLink Documents & Fichiers.
Transcription de la présentation:

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

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

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

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

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

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

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

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

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

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

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

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)*

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

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

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

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

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

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

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