Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
awk imbriqué
Envoyé par: lalebarde

Bonjour,

J'ai besoin d'imbriquer des awk. Comme la commande awk n'est pas une commande awk, j'utilise la commande system :

awk '
$1=="[PATH]" {
myPath=$2
print "Traitement du répertoire " $2
}
$1=="[FILE]" {
print " Traitement du fichier " $2
ficPrincipal=myPath $2
ficCorrection=myPath $3
ficBase=myPath "base_" $2
ficTab=myPath "tab_" $2
echo "" > ficBase;
echo "" > ficTab;
system(awk '
BEGIN {flag=1}
flag<=1 && $1=="FREQUENCY" {print $0 >> ficBase; flag=2}
flag<=2 && $1!="1" {print $0 >> ficBase}
flag==2 && $1=="1" || flag>=3 {flag=3; print $2 " " $3 >> ficTab}
')
}
' listeGraph

Le script n'est pas fini, mais déjà, il me jette :
$ bash creeGraph
awk: cmd. line:14: system(awk
awk: cmd. line:14: ^ unexpected newline or end of string
creeGraph: line 16: =1: No such file or directory
creeGraph: line 17: =2: No such file or directory
creeGraph: line 18: ==1: command not found
creeGraph: line 18: flag: command not found
creeGraph: line 21: )
}
: command not found

Quelqu'un saurait-il comment faire ?

Poste le Friday 6 April 2007 15:27:37
Répondre     Citer    
Re: awk imbriqué
Envoyé par: lalebarde

Bon, c'est résolu, c'est l'imbrication de simples quotes qui pose problème. Il faut donc utiliser l'option -f pour les awk internes en externalisant ses commandes dans un fichier à part.

Poste le Friday 6 April 2007 17:26:59
Répondre     Citer    
Re: awk imbriqué
Envoyé par: oudoubah

Pourquoi tu n'utilises pas les fonctions dans awk?

Tu as lu les docs. Tu es devenu un informaticien. Que tu le veuilles
ou non. Lire la doc, c'est le Premier et Unique Commandement de
l'informaticien.
-+- TP in: Guide du Linuxien pervers - "L'évangile selon St Thomas"

Poste le Friday 6 April 2007 17:41:57
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
awk imbriqué
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons