• Aucun résultat trouvé

ASUR4 - TP Système N°6Programmation AWK

N/A
N/A
Protected

Academic year: 2022

Partager "ASUR4 - TP Système N°6Programmation AWK"

Copied!
1
0
0

Texte intégral

(1)

IUT des Pays de l’Adour LP RT - ASUR

ASUR4 - TP Système N°6

Programmation AWK

Langage AWK

a) Décrivez le script AWK qui affiche les lignes de plus de 80 caractères.

b) Décrivez le script AWK qui affiche les lignes qui contiennent exactement deux champs.

c) Décrivez le script AWK qui affiche le second champ de chaque ligne.

d) Décrivez le script AWK qui affiche la liste des champs de chaque ligne dans un ordre inversé.

e) Donnez le script AWK qui permet de compter le nombre de lignes qui contiennent la chaîne "sympa".

f) A l'aide des tableaux associatifs, donnez le script AWK qui affiche la fréquence des mots d'un texte.

g) Donnez le script AWK qui permet de compter le nombre de lignes qui commencent par la chaîne

"POUET".

h) Donnez le script AWK qui permet d'afficher la taille totale en Kilo-Octets des fichiers du répertoire courant. Exemple (la commande 'ls -l' affiche la taille en octet):

munier@tealc:~/Documents/tmp/test$ ls ­l  total 140 

­rw­r­­r­­ 1 munier munier 20704 2007­11­23 10:59 zola1.txt 

­rw­r­­r­­ 1 munier munier 19344 2007­11­23 10:59 zola2.txt 

­rw­r­­r­­ 1 munier munier 28469 2007­11­23 10:59 zola3.txt 

­rw­r­­r­­ 1 munier munier 24241 2007­11­23 10:59 zola4.txt 

­rw­r­­r­­ 1 munier munier 21870 2007­11­23 10:59 zola5.txt 

­rw­r­­r­­ 1 munier munier 20388 2007­11­23 10:59 zola6.txt  munier@tealc:~/Documents/tmp/test$ taille

total K­bytes: 131,852

i) Donnez le script AWK qui affiche les lignes qui contiennent la chaîne "__DEBUG" et recopie les lignes qui ne la contiennent pas dans un fichier avec le même nom que le fichier initial mais avec un suffixe `- d'. Exemple:

munier@tealc:~/Documents/tmp$ cat source 197  /* From rle_open_f.c. */

198  extern FILE *rle_open_f();

199  extern FILE *rle_open_test(); /*__DEBUG*/

munier@tealc:~/Documents/tmp$ retire___DEBUG source  199  extern FILE *rle_open_test(); /*__DEBUG*/

munier@tealc:~/Documents/tmp$ cat source­d 197  /* From rle_open_f.c. */

198  extern FILE *rle_open_f();

j) Donnez le script AWK qui retire tous les textes entre parenthèses. Exemple:

munier@tealc:~/Documents/tmp$ cat avec_par.txt Texte (blablabla) entre parenthèses (comme ici par exemple) à retirer.

munier@tealc:~/Documents/tmp$ retire_parentheses avec_par   Texte entre parenthèses 

 à retirer.

 

Références

Documents relatifs

Sur l’Annexe, compléter le script pour obtenir un tri- angle équilatéral de côté 80 unités.. quand

gawk does; a nextfile inside a function body reads the first record from the next file and starts processing it with the first rule in the program, just as any other

2 AWK compte le nombre de champs d'une ligne courante; ce nombre est place dans la variable globale NF (dans l'exemple, NF = 4).. 3 AWK compte le nombre de lignes du chier d'entree;

• Simply put, awk is a programming language designed to search for, match patterns, and perform actions on files... This presentation will assume the widely used POSIX awk

(Alternatively, the -F option could be used on the command line to change t he input held separator.) This example reads the passwd file and determines the next available user ID

 program and input files are provided as command- line arguments. 

Pour comparer le contenu d'une variable avec une chaîne fixe, cette chaîne doit être placée entre guillemet contrairement aux valeurs numériques qui n'ont pas besoin de guillemet :.

 Line-oriented tool for pattern matching and replacement (stream editor).  Not really a programming language