Condition nul sur grep|awk
Résolu
Bonjour à toutes et à tous,
Je cherche comment blinder mon script. Lors d'une de mes commandes, je fais un grep puis un awk et j'inscris lme resultat dans un fichier .txt. Les informations que j'extraie n'etant pas disponible tout le temps, j'aimerai pouvoir faire en sorte que lorsqu'il n'y a rien à extraire, le script mette un espace blanc au lieu de rien du tout.
Quelqu'un a une idée svp?
Merci d'avance.
tradik
Je cherche comment blinder mon script. Lors d'une de mes commandes, je fais un grep puis un awk et j'inscris lme resultat dans un fichier .txt. Les informations que j'extraie n'etant pas disponible tout le temps, j'aimerai pouvoir faire en sorte que lorsqu'il n'y a rien à extraire, le script mette un espace blanc au lieu de rien du tout.
Quelqu'un a une idée svp?
Merci d'avance.
tradik
6 réponses
-
Contributeurhello
awk '/VIP user/ {x=1;print $7,$8};END{if(!x)print "non defini"}' fichier -
pour l'instant, je fais comme ça, en vain:
grep "VIP users" | awk '{if ($7 == "" ) {print "Non defini"} else {print $7,$8}}'
mais ne marche pas -
Je me demande si dans la condition if ($7 == "" ) il y a pas un soucis. Etant donné qu'il ne trouve pas la ligne "VIP users", comprend il que $7 n'existe pas? :s
-
up
-
Super!
Merci dubcek :) -
Contributeureffectivement, si grep ne trouve rien, awk ne reçoit rien, donc le test n'a pas lieu