:: Enseignements :: Licence :: L2 :: 2009-2010 :: Système ::
[LOGO]

Shell Unix (suite)


Exercice 1 - Affichez votre adresse ip

À l'aide des commandes ifconfig, grep et cut, récupérer et afficher l'adresse IP de votre ordinateur. Où se trouve la commande ifconfig ?

Indice : servez-vous de la commande locate pour la trouver. Modifier la variable PATH de votre shell afin de pouvoir utiliser cette commande sans en donner le chemin complet. Répercutez cette modification dans votre fichier .bashrc pour qu'elle soit permanente.

Écrire un shell script qui affiche votre adresse IP.

Bonus : faites la même chose mais en vous servant de sed au lieu de cut pour isoler l'adresse IP dans votre ligne.

Exercice 2 - xkill

En mode graphique, lancer depuis un terminal le programme xeyes, en mettant un "&" à la fin de votre commande afin d'avoir toujours accès au terminal.

Lancer à présent le programme xkill. Un curseur apparaît, cliquer sur la fenêtre de xeyes. Que se passe-t-il ?

Réimplanter un équivalent du programme xkill en vous servant uniquement des programmes xwininfo, grep, cut et xkill mais en utilisant obligatoirement l'option -id de celui-ci.

Exercice 3 - Afficher les fichiers par ordre croissant de taille

À l'aide de la seule commande ls afficher les fichiers du répertoire courant triés par ordre de taille croissant. Créer un alias dans votre fichier .bashrc pour réaliser cette opération.

À présent, faire la même chose en vous servant de ls -l (sans autre option) et de la commande sort.

Exercice 4 - La commande sed et les couleurs ANSI

Taper dans un terminal la commande :
echo "\E[33mFIAT LUX\E[0m"
Que se passe-t-il ?

Taper à présent la commande
echo -e "\E[33mFIAT LUX\E[0m"
Comment expliquer la différence ?

Realiser une commande sed qui lise sur son entrée standard un code source C et mette en vert (changer 33 en autre chose pour trouver le code correspondant à cette couleur) toutes les occurences du mot-clé int.

Remarque : le code qui marchait pour echo ne marche pas pour sed, au lieu de E il faut rentrer ^V < Esc >, c'est-à-dire Control-v suivi de la touche Echap.

Exercice 5 - Redirections

Utiliser la commande find pour trouver tous les fichiers .c sur les comptes des étudiants de votre promotion. Rediriger la sortie d'erreur vers /dev/null afin de ne plus avoir de message d'erreur lorsque vous ne pouvez pas lire dans un répertoire. Rediriger la sortie standard pour stocker le résultat dans un fichier.

Écrivez un script qui affiche la proportion de fichiers .c dans votre compte par rapport à votre promotion de la façon suivante:
$./compter.sh
Vous avez 12 des 1345 fichiers .c de votre promotion