Terminale NSI 2022-2023
Lycée Pierre Méchain


Programmation BASH

Tutoriel

Exercice 01 : saisie clavier, variables

On entre son nom (ex : Dupond) et son prénom (ex : Roger) au clavier. Le script affiche :

NOM : Dupont
PRÉNOM : Roger

Exercice 02 : saisie clavier, variables, opérations sur les entiers

On entre deux entiers N (ex : 25) et M (ex : 12) au clavier. Le script affiche :

25 + 12 = 37
25 - 12 = 13

Exercice 03 : structure de contrôle if

On entre "oui" ou "non" au clavier. Le script affiche la traduction en anglais


Exercice 04 : structure de contrôle if else

On entre "oui" ou "non" au clavier. Le script affiche la traduction en anglais avec un message d'erreur si l'on a entré autre chose


Exercice 05 : structure de contrôle case

On entre "un" ou "deux" ou "trois", etc. (jusque "neuf") au clavier. Le script affiche la traduction en anglais avec un message d'erreur si l'on a entré autre chose qu'un chiffre en français


Exercice 06 : structure de contrôle while

On entre un prénom au clavier. Le script affiche "Ce n'est pas toi" et invite à taper un autre nom jusqu'à ce qu'on entre "Roger" (et alors le script se termine après avoir affiché "Bonjour Roger")


Exercice 07 : structure de contrôle until

Même problématique que celle de l'exercice 6


Exercice 08 : structure de contrôle for

Concevez un script qui affiche (sans espaces):

0!1!2!3!4!5!6!7!8!9!

Exercice 09 : structure de contrôle for

Concevez un script qui crée (avec la commande "touch") 10 fichiers vides. Ces fichiers seront nommés fichier0 à fichier9


Exercice 10 : commande wc

Tout d'abord, créez manuellement 5 fichiers textes contenant chacun une ligne de mots séparés par des espaces. Ces fichiers seront nommés f01.txt à f05.txt (aucun fichier n'aura le même nombre de mots qu'un autre)

Concevez un script permettant d'afficher Le fichier f01.txt contient N mots. (N sera calculé grâce à la commande wc)


Exercice 11 : arguments

Idem, mais le nom du fichier à analyser sera passé en argument au script


Exercice 12 : répétition d'une commande

Avec les fichiers de l'exercice 10, concevez un script permettant d'afficher pour chacun d'entre eux le nombre de mots, ainsi que la somme de ces nombres


Exercice 13 : détermination selon critère

Avec les fichiers de l'exercice 10, concevez un script permettant d'afficher le nom du fichier contenant le moins de mots


Exercice 14 : tri

Avec les fichiers de l'exercice 10, concevez un script permettant d'afficher la liste des fichiers par ordre croissant du nombre de mots par fichier


Exercice 15 : correcteur automatique de QCM

On se propose de concevoir un script permettant d'automatiser la notation d'un QCM pour un groupe de candidats à un examen.

Le QCM comporte 10 questions. À chaque question est proposé un choix parmi 3 ("1", "2", "3"). Le candidat répond au QCM par une chaîne de 10 caractères, par exemple "2132210113" (le "0" signifie "je ne sais pas").

Un fichier solution contient la chaine de 10 caractères correspondant aux bonnes réponses.

Le barème est :

Vous devrez concevoir un script exercice15 qui affichera la note sur 20. Attention, le fichier contenant la chaîne de caractère des réponses sera fournie à ce script en argument.


Exercice 16 : correcteur automatique de QCM (2ème partie)

Le principe reste le même que dans l'exercice précédent, mais chaque candidat envoie ses réponses au professeur dans un fichier texte nommé toto (pour le candidat Toto, évidemment...).

les script que vous devez concevoir devra noter tous les candidats (dont les fichiers réponses seront rassemblés dans un même répertoire) et présenter le résultat sous la forme suivante :


            toto : 12/20
            roger : 16/20
            albert : 7/20
        

Exercice 17 : correcteur automatique de QCM (3ème partie)

On ajoute à l'affichage précédent :