La commande AWK
Extraire des informations précises
d'un fichier créé dans un
format propriétaire particulier
A l'aide de la commande AWK, vous allez tout d'abord mettre les
informations contenues dans un fichier
au format particlier sous une forme
qui sera directement exploitable pour
vous retrouver facilement certaines
informations.
Vous allez utiliser la commande AWK et son langage de programmation
associé pour effectuer ce premier
travail.
Dans un deuxième temps, vous isolerez certaines informations
à l'aide de commandes ou scripts.
Le fichier
materiel que nous
vous fournisssons contient des informations sur les machines qui se trouvent dans un laboratoire
d'informatique. Pour chaque machine, nous avons les informations
suivantes:
Champ |
Signification |
ident |
Nom de la machine |
numip |
Numéro IP |
hostid |
Numéro d'identification du processeur |
sn |
Numéro de serie |
type |
Type de matériel |
modèle |
modèle de matériel |
config |
Configuration du matériel |
install |
Date d'installation |
fourn |
Fournisseur |
maint |
Date de maintenance |
prop |
Propriétaire de la machine |
util |
Utilisateur de la machine |
pos |
Position géographique de la machine |
Les informations concernant une machine sont repérées par une ligne de
symbole
#.
Une ligne contient un champ de l'information d'une machine.
- Question
- Créér un répertoire dans lequel vous allez
copier le fichier materiel
.
- Question
- Transformer le fichier materiel
pour que toutes les informations concernant une machine se trouvent sur
une seule ligne. Chaque champ d'information étant séparé
des autres par le symbole :'. Le fichier materiel transformé sera
rangé dans le fichier mat.
- Question
- Donner la commande permettant de trier le fichier mat
par ordre alphabétique sur le nom de la machine.
- Question
- Donner la liste des machines avec leur position respective.
- Question
- Donner la liste des noms de machine par modèle.
- Question
- Donner le nombre de machines par position.
- Question
- Donner le nombre de machines par modèle.
- Question
- Donner la liste des noms de machine et leur numéro IP par ordre
croissant du numéro IP.
Pour répondre à cette question, une solution consiste
à utiliser la commande sort. Toutes les machines ont un
numéro de classe B dont la partie réseau vaut 172.31,
il faudra donc utiliser le troisième et le quatrième
octet de l'adresse pour trier la liste des machines.
- Question
- Donner la liste des machines installées en 1991.
- Question
- Donner la liste des machines installées depuis 1992.
- Question
- Donner la liste des machines pour un propriétaire donné
en argument (script shell).
- Question
- Donner la liste des machines pour un type de machine donné en
argument (script shell).
- Question
- Donner l'ensemble des informations concernant une machine donnée en
argument (script shell).