[gull] sh, awk, et les guillemets
Pierre Maitre
po.maitre at gmail.com
Wed Apr 15 23:35:49 CEST 2009
Le 14 avril 2009 15:57, Sebastien Chassot <seba.linux at sinux.net> a écrit :
> Est-ce que tu as essayé d'échapper les guillemets entourant nid
> ( '\"nid\"' ) parce qu'il me semble que le premier guillemets est
> interprété comme "fermant"?
Oui, j'y ai pensé aussi. Malheureusement, avec le \" , nid n'est
plus reconnu comme nom de variable
> Deuxième remarque, c'est /bin/sh qui semble se plaindre de la syntaxe
> pas awk !??
Oui mais c'est quand même awk le fautif. Si le problème survient avec
une version de awk et pas avec une autre, c'est probablement au niveau
du passage d'arguments entre la shell et awk qu'est le problème.
2009/4/14 Leopoldo Ghielmetti <leopoldo.ghielmetti at a3.epfl.ch>:
> Je viens de l'exécuter sur mon Ubuntu 8.04 et il marche sans problèmes:
>> touch clients
>> echo toto | awk '{
> #....
> # valeur de la variable nid obtenue plus haut
> #### search the address in the file "clients" :
> while( "egrep -e '"nid"' clients" | getline ) {}
> nom = $12
> close ( "egrep -e '"nid"' clients" )
> print nom
> }'
>>
>
> Aucune erreur affichée.
> Il s'agit de GNU Awk 3.1.6
Voila la solution: apt-get install gawk et ça marche aussi chez moi!
Sur Ubuntu, gawk n'est pas installé par défaut (awk pointe vers mawk)
et je n'y avais pas pensé
Problème résolu. Merci Leopoldo
Pierre Maitre
PS Pour ceux qui ne connaissent pas, awk est le véritable Swiss Army
Knife pour transformer un fichier de données d'un format vers un
autre et pour manipuler des données.
--
Dr Pierre-O. Maitre
Privat-Docent
FMH Anesthésiologie
FMH Pharmacologie Clinique
Cabinet médical / A la Joy
1272 Genolier
More information about the gull
mailing list