Commit 5ab42570 authored by Quentin Duchemin's avatar Quentin Duchemin

Typo, quotes, précisions sur les variables

parent 04ac83ae
......@@ -146,19 +146,22 @@ echo "Salut $nom"
\end{beamercolorbox}
\end{frame}
\begin{frame}[fragile]{Les opérations arithmétique}
\begin{frame}[fragile]{Les opérations arithmétiques}
\begin{block}{Contexte}
Bash ne gère pas nativement les variables comme des nombres (2+2 donnera une erreur). Il faut passer par la commande \texttt{let}
Bash ne gère pas nativement les variables comme des nombres (par exemple, \og{}\texttt{2+2}\fg{} renverra une erreur). Il faut passer par la commande \texttt{let}.
\end{block}
Exemple :
\begin{beamercolorbox}[rounded=true,shadow=true]{terminal}
\begin{Verbatim}
let ``a=5''
let ``b=2''
let ``c=a+b''
#!/bin/bash
let "a=5"
let "b=2"
let "c=a+b"
echo $c
\end{Verbatim}
\end{beamercolorbox}
\medskip
Quand on execute le script, on obtient :
\begin{beamercolorbox}[rounded=true,shadow=true]{terminal}
\begin{Verbatim}
......@@ -168,7 +171,7 @@ remy@hp-remy:~/scripts$ ./script.sh \Pause
\end{beamercolorbox}
\end{frame}
\begin{frame}{Les opérateurs arithmétiques}
\begin{frame}[fragile]{Les opérateurs arithmétiques}
Les opérateurs reconnus par \texttt{let} sont :
\begin{table}
\centering
......@@ -189,35 +192,37 @@ remy@hp-remy:~/scripts$ ./script.sh \Pause
\texttt{\%} & Modulo & \texttt{5\%2=1} \\
\hline
\end{tabular}
\caption{Les opérateurs de let}
\caption{Les opérateurs supportés par let}
\label{tab:operators}
\end{table}
\begin{exampleblock}{Info}
Comme en c, il est possible d'utiliser la syntaxe \texttt{let ``a+=3''} à la place de \texttt{let ``a=a+3''} {\tiny\it (ou autres opérateurs)}
Comme pour le langage C, il est possible d'utiliser la syntaxe \verb|let "a+=3"| à la place de \verb/let "a=a+3"/ {\tiny(ou autres opérateurs).}
\end{exampleblock}
\end{frame}
\begin{frame}[fragile]{Les paramètres d'execution}
\begin{block}{Contexte}
On a vu depuis les derniers jours qu'une commande peut recevoir un ou plusieurs paramètres (exemple : \texttt{mv <source> <destination>}). Il en est de même pour les scripts bash.
On a vu cette semaine qu'une commande peut recevoir un ou plusieurs paramètres (exemple : \texttt{mv <source> <destination>}). Il en est de même pour les scripts Bash.
Comme pour les commandes, l'ordre des paramètres est {\bf primordial}
Comme pour les commandes, l'ordre des paramètres est {\bf primordial} !
\end{block}
\begin{block}{Accéder aux paramètres}
Lors de l'exécution, des variables sont automatiquement créées : \texttt{\$\#} contient le nombre de paramètres, \texttt{\$1} le premier, \texttt{\$2} le deuxième \ldots \texttt{\$9} le neuvième
Lors de l'exécution, des variables sont automatiquement créées : \texttt{\$\#} contient le nombre de paramètres, \texttt{\$1} le premier, \texttt{\$2} le deuxième~\ldots et \texttt{\$9} le neuvième.
\end{block}
Exemple:
\begin{beamercolorbox}[rounded=true,shadow=true]{terminal}
\begin{Verbatim}
#!/bin/bash
echo ``Il y a $# paramètres d'execution''
echo ``Le premier paramètre est $1''
echo "Il y a $# paramètres d'execution"
echo "Le premier paramètre est $1"
\end{Verbatim}
\end{beamercolorbox}
\end{frame}
\begin{frame}[fragile]
Ce qui donnera:
\medskip
\begin{beamercolorbox}[rounded=true,shadow=true]{terminal}
\begin{Verbatim}
remy@hp-remy:~/scripts$ ./script.sh test \Pause
......@@ -231,35 +236,40 @@ Il y a 0 paramètres d'execution
Le premier paramètre est \Pause
\end{Verbatim}
\end{beamercolorbox}
\medskip
\begin{beamercolorbox}[rounded=true]{orangebox}
\enquote{Mais attends, je peux avoir que 9 paramètres ?}
\end{beamercolorbox}
\medskip
\begin{block}{}
Non, on peut en fait avoir plus de paramètres.
On en reparlera quand on saura utiliser les boucles, pour faire ça proprement
On en reparlera quand on saura utiliser les boucles, pour faire ça \textit{proprement}.
\end{block}
\end{frame}
\begin{frame}[fragile]{Les tableaux}{Créer et lire un tableau}
\begin{block}{Contexte}
En bash, on peut également déclarer des tableaux. Ce sont des variables un peu spéciales, qui contiennent plusieurs valeurs référencées par un {\bf index}
En Bash, on peut également déclarer des tableaux. Ce sont des variables un peu spéciales, qui contiennent plusieurs valeurs référencées par un {\bf index}.
\end{block}
\begin{block}{Déclarer un tableau}
Pour déclarer un tableau, on utilise la syntaxe \texttt{nom=(val0 val1 val3)} {\tiny\it (on peut évidement mettre plus de 3 valeurs)}
Pour déclarer un tableau, on utilise la syntaxe \texttt{nom=(val0 val1 val3)}\\
{\tiny On peut évidement mettre plus de 3 valeurs.}
\end{block}
\begin{block}{Accéder à une valeur}
Les valeurs stockées dans un tableau possèdent un \textbf{index} qui permet de les lire. Cet index \textbf{commence à 0}.
La syntaxe pour lire une valeur est \verb+${nom[index]}+. On peut également utiliser \verb+${nom[*]}+ pour afficher toutes les valeurs ayant un index numérique.
Les valeurs stockées dans un tableau possèdent un \textbf{index} qui permet d'y accéder individuellement. Cet index \textbf{commence à 0}.
La syntaxe pour lire une valeur est \verb+${nom[index]}+. On peut également utiliser \verb+${nom[*]}+ pour afficher toutes les valeurs associées à un index numérique.
\end{block}
\end{frame}
\begin{frame}[fragile]{Les tableaux}{Modifier un tableau}
\begin{block}{Ajouter ou modifier une valeur}
La syntaxe \texttt{nom[index]} permet également d'ajouter ou de modifier une valeur.
On peut alors créer la valeur correspondante, ou modifier celle dèjà présente, en écrivant \verb+nom[index]=valeur+
On peut alors créer la valeur correspondante, ou modifier celle dèjà présente, en écrivant \verb+nom[index]=valeur+.
\end{block}
\begin{exampleblock}{Quels index ?}
Les index ne sont pas forcément une valeur numérique (de toute façon, bash ne fait pas la distinction). Ils le seront uniquement dans le cas où on déclare le tableau avec \texttt{nom=(val val)}. Sinon, on peut mettre \textbf{ce qu'on veut}
\begin{exampleblock}{Quel genre d'index ?}
Les index ne sont pas forcément une valeur numérique (de toute façon, Bash ne fait pas la distinction). Ils le seront uniquement dans le cas où on déclare le tableau avec \texttt{nom=(val val)}. Sinon, on peut mettre \textbf{ce qu'on veut}, par exemple un mot !
\end{exampleblock}
\end{frame}
......@@ -268,7 +278,6 @@ Le premier paramètre est \Pause
\begin{beamercolorbox}[rounded=true,shadow=true]{terminal}
\begin{Verbatim}
#!/bin/bash
mon_tableau=(toto titi)
echo $\{mon_tableau[0]\} $\{mon_tableau[1]\}
echo $\{mon_tableau[*]\}
......@@ -289,6 +298,6 @@ tutu titi
\end{Verbatim}
\end{beamercolorbox}
\begin{exampleblock}{Remarque}
On remarque qu'il y a bien une valeur dans \verb+mon_tableau[mon_index]+ mais qu'on ne la récupère pas avec la syntaxe *
On remarque qu'il y a bien une valeur dans \verb+mon_tableau[mon_index]+ mais qu'on ne la récupère pas en utilisant le joker \texttt{*}.
\end{exampleblock}
\end{frame}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment