next up previous contents index
suivant: Exemple monter: Trucs et astuces précédent: Passage de paramètres du   Table des matières   Index

Utilisation de variables du Shell dans le corps du programme "awk"

Cette notion n'est applicable que si "awk" est appelé à l'intérieur d'un Shell script et que le corps du programme "awk" ne se trouve pas dans un fichier séparé. Dans ce cas, on aura :

awk '
    corps du programme awk
' [fichier]

Pour pouvoir utiliser des variables Shell ou bien le résultat de commandes, il suffit de les insérer entre deux simples quotes (caractère "'") à condition que le bloc programme de "awk" soit compris entre deux simples quotes, ce qui est préférable par rapport aux doubles quotes (caractère """).

Exemple 15..9 :


#!/bin/sh
echo "Entrez une chaine :\c"
read answer
echo $answer | awk '
    BEGIN {
        status=0;
        today='`date +%H%M`'
    }
    NR > 1 { status=1}
    $1 ~ /[0-9].*/ {
        printf ("La chaine %s comprend une partie num{\'e}rique: %d\n",
            '$answer', $1);
    }
    END {
        printf ("Execut{\'e}e le %s\n", today)
    }
'

ATTENTION



baudry@esme.fr