#1 Le 11/11/2008, à 00:49
- djimbo
Awk : problème de print dans fichier
Bonsoir,
Une toute petite question ... j'aimerais vraiment savoir pourquoi le bout de shell suivant
more log |awk '
BEGIN{
print "### DEBUT DU AWK ###"
}
{
print "toto" > /home/djimbo/Developpements/rsync/Shell/out;
}
END{
print "### FIN DU AWK ###"
}'
me génère un fichier nommé "0nan" au lieu d'un fichier "out" ????
Merci beaucoup !
Dernière modification par djimbo (Le 11/11/2008, à 00:49)
Ubuntu 8.10 on P5Q Pro + Core2Duo E5200@2.5GHz + Radeon 3850HD PCIe + 4 Go Ram + HD 1 To Spinpoint F1
Hors ligne
#2 Le 11/11/2008, à 11:53
- Totor
Re : Awk : problème de print dans fichier
tout simplement parce que ta redirection n'est pas au bon endroit !
elle doit se faire après le programme awk .
-- Lucid Lynx --
Hors ligne
#3 Le 11/11/2008, à 12:32
- thierry2351
Re : Awk : problème de print dans fichier
En fait, la syntaxe
print "toto" >"filename" est parfaitement légale avec awk.
Le problème vient de l'absence de guillemets autour du nom de fichier dans ton script.
Si on a :
print "toto" > /dir/ ,
awk considère /dir/ comme un pattern, et le remplacera par 0 ou 1 selon que "dir" apparait dans la ligne traitée
avec
print "toto" >/dir/file ,
il remplace par 0 (ou 1) suivi de nan (not a number), d'où le 0nan.
Hors ligne
#4 Le 12/11/2008, à 20:33
- djimbo
Re : Awk : problème de print dans fichier
Merci beaucoup !
Pour ma culture perso qu'est ce que cela signifie :
"awk considère /dir/ comme un pattern" ???
Ubuntu 8.10 on P5Q Pro + Core2Duo E5200@2.5GHz + Radeon 3850HD PCIe + 4 Go Ram + HD 1 To Spinpoint F1
Hors ligne