SCR.1.1/TD05/srivasta-6-td05-reponses.txt
Emmanuel Srivastava 203fa2f355 update
2024-11-19 14:20:30 +01:00

63 lines
2.7 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

I. Substitutions.
1. Si name est le nom dune variable, alors $name sera substitu´e par value
x=pop
Alors echo x ; affiche : pop , et echo $x ; affiche : le contenu de pop
x=5+7 ; Alors echo $x ; affiche : l'adition de 5+7 soit 12
PWD est une variable du shell qui retient le chemin complet vers le r´epertoire de travail
courant :
PWD: The current working directory as set by the cd command.
On veut afficher la chaˆıne de caract`eres :
Working directory: /export/home/students/quidam/SCR/
o`u ce qui vient apr`es les : doit se substituer, `a chaque fois, par le chemin complet du
r´epertoire courant.
Une ligne de commande qui le fait : echo
2.
On me remet un ficher list contenant une liste de noms d´el´ements dont je dois v´erifier
le type du contenu. Je veux avoir en un seul affichage le type du contenu de chacun des
´el´ements dont le nom est enregistr´e dans le fichier list :
Une ligne de commande qui le fait : echo $(ls list)
3.
x=5+7 (cf. 1) Alors echo $x ; affiche : le calcul de 5+7 qui est 12
x=$((5+7)) Alors echo $x ; affiche : aussi le calcul de 5+7 qui est 12 car le dollar
dans l'instanciation fait que x=(5+7) car le dollar a enlevé les parenthèses
y=5 ; z=-7
x=y*z ; alors echo $x ; affiche :le produit de y et z qui est -35
x=$((y*z)) ; alors echo $x ; affiche : pareil que la question dernière avec le meme raisonnement
que la question précedent celle d'avant
II. Expressions conditionnelles.
Put all together :
1. [[ myrmidon < myriade ]] ; echo $? ; affiche : 1 car elle est vraie dans l'ordre alphabetique
mymidon < myriade
2. [[ 4567 < 5 ]] ; echo $? ; affiche : 0 car 4567>5
3. [[ patate == potato ]] ; echo $? ; affiche : 0 car patate n'est pas le meme mot que potato
4. [[ patate -eq potato ]] ; echo $? ; affiche 0 car patate n'est pas égal à potato
II. Commandes compos´ees.
1. if list; then list; [ elif list; then list; ] ... [ else list; ] fi
(a) if [[ myrmidon < myriade ]]
> then echo "myrmidon sorts before myriade"
> else echo "myrmidon does not sort before myriade"
> fi
affiche : myrmidon sorts before myriade
car myrmidon est inférieur a myriade en terme alfabetiques.
(b) On lance deux fois de suite :
if [[ -d VROOM ]] ; then cd VROOM ; else mkdir VROOM ; fi
What will happen ?
La premiere fois mkdir VROOM car VROOM n'est pas un directory donc on ne lance pas la premiere condition
mais alors à la deuxieme fois cd VROOM sera lancé
2. for name in word(s) ; do list ; done
The list of word(s) following in is expanded, generating a list of items.
The variable name is set to each element of this list in turn, and the do list
is executed each time.
(a) for i in "1 2 3" ; do echo $i ; done ; sex´ecute . . . fois et affiche :