Projet DVD-MIAGE 2010 : Test n°1 sur les Commandes UNIX et la Programmation Shell
Exercice 1 – Questions de cours
- Citez les quatre grands types de tâches qu'un système d'exploitation réalise.
- Quelle est la différence entre un programme et un processus ?
- Quel principal avantage procure l'utilisation de scripts shell ?
Exercice 2 – Commandes UNIX
- Quelle commande permet d'afficher du texte sur la sortie standard ?
- Quelle commande permet d'afficher le chemin absolu du répertoire courant ?
- Comment savoir combien de personnes sont connectées ?
- Quelle différence existe-t-il entre les commandes
cat > fichieretcat >> fichier? - Pour lister uniquement certains fichiers, on utilise la commande
ls expression. Précisez la signification des symboles suivants : *, ?, [ab], [a-d]. - Comment remonter d'un niveau dans l'arborescence ?
- Quelle commande doit-on utiliser pour localiser une commande ou une application qui ne se trouve pas dans le répertoire courant ?
- À quoi sert la commande
chmod? Donnez deux exemples d'utilisation équivalents pour cette commande.
Exercice 3 – Expressions Régulières
Expliquez les fonctions des expressions régulières suivantes dans le contexte du fichier fich.dat :
grep '^R..$' fich.dat: Cherche les lignes commençant par "R" suivies de deux caractères quelconques.grep '[agct]' fich.dat: Cherche les lignes contenant au moins un des caractères "a", "g", "c" ou "t".grep '[AGCT].$' fich.dat: Cherche les lignes se terminant par un caractère qui est soit "A", "G", "C" ou "T".grep '[AGCT]{2}' fich.dat: Cherche les lignes contenant exactement deux caractères parmi "A", "G", "C" ou "T".grep '[A-Z]' fich.dat: Cherche les lignes contenant au moins une lettre majuscule.grep '[0123]' fich.dat: Cherche les lignes contenant au moins un des chiffres "0", "1", "2" ou "3".grep '[0-9]' fich.dat: Cherche les lignes contenant au moins un chiffre.grep '[agct]+' fich.dat: Cherche les lignes contenant une ou plusieurs occurrences des caractères "a", "g", "c" ou "t".
Exercice 4 – Bash : Écriture de Scripts
Un fichier texte est organisé en deux colonnes contenant des entiers. Il faut produire un affichage à cinq colonnes sur la sortie standard (le terminal) où :
- La troisième colonne contiendra la somme des deux premières colonnes.
- La quatrième colonne contiendra le plus petit entier présent dans le fichier initial.
- La cinquième colonne contiendra le plus grand entier du fichier initial.
Exemple :
Fichier initial :
3 47 61 2
Résultat attendu à l'écran :
3 4 7 1 77 6 13 1 71 2 3 1 7
Écrivez le script bash correspondant.
FAQ
1. Qu'est-ce qu'un script shell ?
Un script shell est un fichier texte contenant une série de commandes UNIX qui peuvent être exécutées par un interpréteur de commandes, comme Bash.
2. Comment afficher le chemin absolu du répertoire courant ?
Utilisez la commande pwd (Print Working Directory).
3. Quelle est la différence entre cat > fichier et cat >> fichier ?
La commande cat > fichier écrase le contenu du fichier, tandis que cat >> fichier ajoute le texte à la fin du fichier existant.