Du shell au Script shell .. TD GMSI24 #Warmup

Du shell au Script shell .. TD GMSI24 #Warmup

Maintenant que Said et Momo sont devenus les reines du #Bash

Entrainez-vous avec les exercices suivants . Devant certains exercices cous avez un petit cours à lire avant (pour certains en PDF)

Création d’un premier Script

On passe par la commande touch ou par un éditeur pour créer le script

touch monscript.sh ou nano monscript.sh

J’ai donné ici l’extension .sh à monscript. On le fait souvent par convention pour indiquer que c’est un script shell, mais ce n’est pas obligatoire. Certains scripts shell n’ont d’ailleurs pas d’extension du tout.Il pourrait s’appeler monscript

La première ligne du script commence par le “sha-bang.”Il sert à dire quel shell on va utiliser .il permet de charger le bon shell mais il n’est pas obligatoire..si il n’est pas présent le shell de l’utilisateur courant sera utilisé.

#!        <---Ca c'est le sha-bang
on aura donc en début de script bash:
#!/bin/bash

Par convention et bon sens on va ajouter des commentaires dans le script. Ce sont des lignes qui ne seront pas exécutées mais qui permettent d’expliquer ce que fait votre script.

Tous les commentaires commencent par un #

#!/bin/bash

# Affichage du répertoire courant
pwd

Ensuite il faut enregistrer le script et lui donner des droits d’execution. Avec la commande :

chmod +x monscript.sh

il passera donc en – rwx r-x r-x au niveau de la permission

Et enfin on l’exécute avec ./

./monscript.sh

Exo1 :

Dans un script, vous allez compter le nombre de commande qui commencent par K ET par C en bash .

Vous avez le droit au Man mais pas ChatGPT !!

Me montrer le résultat



LIRE PDF AFFICHAGE A L’ECRAN

 Exo Affichage à l’écran

1. Exécutez la commande echo qui permet d’afficher le texte suivant à l’écran :

Les GMSI24 sauf Houssam sont les meilleurs
oui, je le pense aussi..

2. A l’aide de la commande echo, affichez la liste de caractères suivants:

& ~ # ( ) | \ ^@ $ * ! ;

3. Quel est le résultat affiché par les lignes de commandes suivantes:

echo pwd
echo `pwd`
echo "il ya `ls | wc -l` fichiers dans `pwd`"
echo "`whoami`, nous sommes le `date '+%d/%m/%y'`"
echo "$(whoami), nous sommes le $(date) "

Caractères spéciaux du shell

Caractèressh (Bourne)ksh 88bashSignification
espacetabulationsaut de ligneouiouiouiSéparateurs de mots sur la ligne de commande.
&ouiouiouiArrière-plan.
| < << > >>ouiouiouiTube et redirections.
>|nonouiouiÉcrasement d’un fichier (option noclobber).
(cmde1;cmde2){cmde1;cmde2}ouiouiouiRegroupement de commandes.
;ouiouiouiSéparateur de commandes.
* ? [ ]ouiouiouiExpressions pour noms de fichier et case.
* ? [ ]nonouiouiExpressions pour la commande de test [[…]].
?() +() *()!() @()nonouiouiExpressions pour noms de fichier [[ ]] et case.
$ et ${ }ouiouiouiValeur d’une variable.
`…`ouiouiouiSubstitution de commandes.
$()nonouiouiSubstitution de commandes.
’…’”…”\ouiouiouiCaractères de protection.
$(( ))nonouiouiSubstitution d’expression arithmétique.
cmde1 && cmde2cmde1 || cmde2ouiouiouiOpérateurs logiques du shell.
#ouiouiouiCommentaire.
~nonouiouiRépertoire d’accueil de l’utilisateur.

Lire PDF sur les redirections

Lire PDF tubes de communications

20150204_094112(1)
20150204_094125

Lire PDF Regroupement de commandes

Lire PDF Processus en arrière plan

L’environnement SHELL

EXO Pré-Requis

www.pdf24.org    Envoyer l'article en PDF   
Posted on: 6 août 2024tontonfred