TD n°2 : Programmation shell CORRECTION
Exercice 1 – Exemple de programme shell. Solution : 1) Ce programme crée le répertoire fourni en argument et au besoin tous les sur-répertoires intermédiaires
Scripts shell
Scripts shell. Programmez sous Unix/Linux. (sh ksh
Révision
22 déc. 2017 Exercice#2. ? Écrire un script shell script1.sh qui affiche la date d'aujourd'hui en utilisant la commande date. Le script affiche :.
TP: Programmation Shell
Exercice N°4 : Créez la commande copier. La commande reçoit en argument deux noms de fichiers la source et la destination. Le script se termine et
Initiation à la programmation shell : Partiel
— Les exercices et les questions sont de difficulté variable et en général non croissante. Il est conseillé de parcourir l'énoncé avant de composer. Les
TD 9 : Scripts UNIX (corrigé)
Ph. Leray. TD 9 : Scripts UNIX (corrigé) semaine du 31 mai 1999. Exercice 1 : Mon premier script. #!/bin/csh. # Mon premier script clear while (1).
TP 03 : Shell bash
17 janv. 2017 finds bugs in your shell scripts. Exercice : param`etres. Écrivez un script analyse.sh qui affiche : Bonjour vous avez rentré nombre ...
CSC 3102 – Sujets de TP Introduction aux systèmes dexploitation
Utilisez ces commandes pour a cher votre identi ant de connexion. Exercice 2 : Mon premier script shell (?15mn). De façon à mettre en œuvre votre premier
Cours et exercices corrigés Initiation et utilisation
CHAPITRE 8 • LA PROGRAMMATION EN SHELL ANNEXE C • CORRIGÉS DES EXERCICES ... un programme qui généralement est un interpréteur de commandes (shell).
sous Unix/Linux
Programmation shell sous Unix/Linux sous Unix/Linux - ksh bash
Exercices shell scripts - accueil - Developpezcom
13 déc 2009 · Cet article regroupe des exercices corrigés en shell scripts Bash et autres langages shell compatibles Les exercices sont classés par
[PDF] TD n°2 : Programmation shell CORRECTION - MIAGE de Nantes
Exercice 1 – Exemple de programme shell Solution : 1) Ce programme crée le répertoire fourni en argument et au besoin tous les sur-répertoires intermédiaires
[PDF] TP: Programmation Shell
Exercice N°3 : Ecrivez un script qui enregistre dans un fichier les lignes saisies au clavier et qui affiche le nombre de lignes qui ont été enregistrées
[PDF] Scripts shell - fnac-staticcom
Scripts shell Programmez sous Unix/Linux (sh ksh bash) Exercices et corrigés 174 QCM 80 travaux pratiques et leurs corrigés
[PDF] Initiation à la programmation shell : Partiel
15 avr 2019 · — Les exercices et les questions sont de difficulté variable et en général non croissante Il est conseillé de parcourir l'énoncé avant de
[PDF] TD 9 : Scripts UNIX (corrigé) - LIPN
1ère Année Département Informatique Système Année 98-99 Ph Leray TD 9 : Scripts UNIX (corrigé) semaine du 31 mai 1999 Exercice 1 : Mon premier script
[PDF] Révision - Esentn
22 déc 2017 · Exercice#2 ? Écrire un script shell script1 sh qui affiche la date d'aujourd'hui en utilisant la commande date Le script affiche :
[PDF] TP no 1: Introduction au Shell (corrigé)
Exercice 1 Shell we start ? Le shell est un langage de programmation interprété : il est donc possible d'écrire des programmes
Exercice Unix corrigé programmation des scripts shells - Clicours
Exercice Unix corrigé programmation des scripts shells tutoriel guide de travaux pratiques en pdf Exercice 1 Créer un script shell nommé « change » qui
Projet DVD-MIAGE 2010
TD n°2 : Programmation shell
CORRECTION
Exercice 1 - Exemple de programme shell
Solution :
1) Ce programme crée le répertoire fourni en argument, et au besoin tous les sur-répertoires
intermédiaires nécessaires. Note : voir l'option '-p' de mkdir.2) mystere /home/dupont/test/projet
Exercice 2 - La boucle while
Solution :
#!/bin/sh if [ $# -eq 0 ]; then echo "sans argument" exit 0 fi while [ $# -gt 0 ]; do echo $1 shift doneExercice 3 - La commande read
Solution :
#!/bin/sh exec < $1 # redirection de l'entrée standard while read ligne ; do echo ">$ligne" doneExercice 4 - La boucle for
Solution :
#!/bin/sh for rep in *; do # pour chaque fichier "rep" du repertoire courant if [ -d "$rep" ]; then # si rep est un repertoire echo $rep # affiche rep fi doneSystèmes d'exploitationA. Queudet
Projet DVD-MIAGE 2010
Exercice 5 - Opérateurs sur les chaînes
Solution :
Ce programme détermine si l'utilisateur dont le nom est donné comme argument est connecté. #!/bin/sh w=`who | grep $1` if [ -z "$w" ]; then echo "$1 n'est pas connecté"; fiExercice 6 - Les conditionnelles imbriquées
Solution :
#!/bin/sh if [ $# -eq 2 ]; then # si le nombre d'arguments est égal à 2 : rep="." # variable rep vaut le repertoire courant = "." droit=$1 # variable droit vaut le premier argument $1 ext=$2 # variable ext vaut le deuxieme argument $2 elif [ $# -eq 3 ]; then # si le nombre d'arguments est égal à 3 : rep=$1 # variable rep vaut le premier argument $1 droit=$2 # variable droit vaut le deuxieme argument $2 ext=$3 # variable ext vaut le troisieme argument $3 else echo "erreur : donnez 2 ou 3 arguments" 1>&2 exit 1 fi for fich in "${rep}"/*"${ext}"; do # pour chaque fichier "fich" dans rep/*ext: chmod g$droit "$fich" # changer le droit du groupe "g" sur "fich" echo $fich doneExercice 7 - L'instruction case
A noter que l'option -i de la commande rm fait exactement ce que nous voulons.Solution :
#!/bin/sh while [ $# -ne 0 ]; do fich=$1; shift ## ou : for fich in $*; do repeat=1 while [ $repeat -eq 1 ]; do echo "Voulez-vous reellement effacer le fichier \"$fich\" ?" read reponse case "$reponse" in [Oo][Uu][Ii]) rm "$fich" echo "suppression confirmée"Systèmes d'exploitationA. Queudet
Projet DVD-MIAGE 2010
repeat=0 [Nn][Oo][Nn]) echo "suppression abondonnée" repeat=0 echo "reponse invalide" esac done doneExercice 8 - La commande basename
Solution :
#!/bin/sh if [ $# -ne 2 ]; then echo "erreur : donnez 2 arguments." 1>&2 exit 1 fi vieux=$1 nouveau=$2 for fich in *"${vieux}"; do base=`basename "$fich" "$vieux"` mv "$fich" "$base$nouveau" if [ $? -ne 0 ]; then echo "je ne peux pas renommer \"$fich\" en \"$base$nouveau\"" 1>&2 fi doneLa commande basename est ici utilisée pour récupérer dans la variable base le nom du fichier sans
son extension représentée par la variable $vieux. Le nouveau nom du fichier (avec sa nouvelle extension) est donc facile à reconstruire : c'est le nom du fichier base, suivi de la nouvelle extension $nouveau.Exercice 9 - Guillemets, quotes ou back quotes ?
Solution :
1)#!/bin/sh
echo "Entrer le nom d'un répertoire : " read dir echo "Le répertoire $dir contient les fichiers suivants :" ls "$dir"2)#!/bin/sh
Systèmes d'exploitationA. Queudet
Projet DVD-MIAGE 2010
echo "Entrer le nom d'un répertoire : " read dir if [ $# -ne 0 ]; then echo "Erreur : Le script doit être appelé avec 1 argument" 1>&2 exit 1 fi if [ ! -d "$dir" ]; then echo "Erreur : \"$dir\" n'est pas un répertoire" 1>&2 exit 1 fi if [ ! -r "$dir" ]; then echo "Erreur : je ne peux pas lire le répertoire \"$dir\"" 1>&2 exit 1 fi # On essaye d'aller dans le répertoire $dir pour utiliser # pwd pour déterminer son nom absolu cd "$dir" 2> /dev/null if [ $? -ne 0 ]; then # on garde alors le nom donné cmd="ls \"$dir\"" else dir=`pwd` cmd="ls" fi echo "Le répertoire \"$dir\" contient les fichiers suivants :" exec $cmdExercice 10 - Les expressions régulières
Solution :
1) Il faut indiquer que l'on veut le début de la ligne, avec le chapeau. Afin de préciser que la ligne
commence par un 'a' minuscule ou majuscule, il y a deux façons de faire : •Utiliser l'option -i qui fait ignorer la différence entre les majuscules et le minuscules. •Dire que l'on cherche un 'a' ou un 'A' en utilisant les crochets.Enfin, il faut protéger les signes contre le shell, pour qu'il ne les interprète pas; on met donc
l'expression entre apostrophes.Il faut donc écrire :
grep -i '^a' fichier ou grep '^[aA]' fichier2) C'est le dollar ($) qui représente la fin de la ligne. Il faut donc écrire : grep 'rs$' fichier
Systèmes d'exploitationA. Queudet
Projet DVD-MIAGE 2010
3) grep '[0-9]' fichier
4) grep '^[A-Z]' fichier
5) grep '^[BEQ]' fichier
6) Le point d'exclamation n'a pas de signification particulière avec grep, on peut donc le mettre tel
quel : grep '!$' fichier7) Pour que grep interprète littéralement le caractère '.' et ne le considère plus comme spécial, il
faut le faire précéder d'un backslash (\). grep '\.$' fichier8) Les caractères spéciaux sont protégés par les crochets. On peut donc écrire :
grep '[^.,;:?!]$' fichierOn peut aussi utiliser l'option -v, qui prend toutes les lignes où ne figure pas une chaîne de
caractères donnée; dans ce cas, on tape : grep -v '[.,;:?!]$' fichier9) On tape au choix : grep '[a-zA-Z]r' fichier'
ou grep '[[:alpha:]]r' fichier'10) C'est le symbole \< qui désigne un début de mot. La première lettre du mot est indifférente, la
seconde est un 'r'. On écrit donc : grep '\<.r' fichierSystèmes d'exploitationA. Queudet
quotesdbs_dbs10.pdfusesText_16[PDF] prêche du père paneloux commentaire
[PDF] diabète au maroc 2016
[PDF] note d'intention projet
[PDF] la princesse de clèves livre audio
[PDF] la princesse de clèves extrait
[PDF] princesse de montpensier lettres volées
[PDF] publicité radio
[PDF] la note de synthèse exercices corrigés
[PDF] lettres volées montpensier
[PDF] littérature américaine contemporaine thèmes
[PDF] portrait sculpté
[PDF] création argile facile
[PDF] activité sculpture maternelle
[PDF] quoi faire avec de l argile