Système awk

1325 mots 6 pages
TP Systèmes d'exploitation : langage awk
(d'après le tutoriel de nyal sur http://www.developpez.com/tutoriel)

1

Présentation

Awk est un langage de programmation datant de 1977, date de son apparition dans le monde Unix. Il tire son nom des trois programmeurs qui l'ont développé : Alfred V. Aho, Peter J. Weinberger et Brian W. Kernighan. Il en existe différentes versions AWK(version originale provenant de AT&T, NAWK version améliorée de la première par AT&T, et GAWK une version développée par la fondation pour le logiciel libre). Cet utilitaire a été créé dans le but de remplacer les commandes grep et sed. Il est toujours utilisé du fait de sa ressemblance avec le langage C, de sa souplesse et de sa présence sur la majorité des systèmes d'exploitation Unix. Il est encore utilisé en administration système et dans les scripts Shell en tant que commande.

2 2.1

Un programme awk Fonctionnement

Awk fonctionne en lisant des données. Ces données peuvent être ainsi traitées par l'utilisateur, et provenir soit de fichiers, soit du canal de l'entrée standard (via un pipe par exemple). Exécution d'un programme awk : 2 manières de faire : ◦ soit en rendant le fichier exécutable en insérant en haut du fichier la ligne #! /usr/bin/awk -f ◦ soit en l'exécutant à l'aide de la commande awk sous un Shell avec l'option -f awk -f fichier_awk < fichier_texte Attention un programme awk ne fonctionnera que si il a des données à lire.

2.2

Structure du programme

Un programme awk se divise en 3 parties : 1. Coeur du programme Ce coeur est composé de conditions et d'actions qui vont être exécutées pour chaque enregistrement (ligne du fichier à traiter) si la condition est remplie :
Condition { action } …. Condition { action } Condition \ { action }

L'accolade ouvrante doit être sur la même ligne, ou il faut mettre le caractère ('\') :

Il est possible de ne pas avoir de condition, alors l'action entre accolades sera automatiquement exécutée. On peut exécuter 2

en relation

  • awk bien determinier
    3683 mots | 15 pages
  • Lodsq sqhhaa
    851 mots | 4 pages
  • Unix
    14213 mots | 57 pages
  • Installation serveur dns
    2875 mots | 12 pages
  • cv et profil
    1750 mots | 7 pages
  • Unix
    555 mots | 3 pages
  • Informatique
    27927 mots | 112 pages
  • Lllololol
    103674 mots | 415 pages
  • Bash & les cmd
    35929 mots | 144 pages
  • Unix
    56674 mots | 227 pages