Stocker commande awk dans une variable [Résolu/Fermé]

Signaler
Messages postés
10
Date d'inscription
vendredi 8 juillet 2011
Statut
Membre
Dernière intervention
28 octobre 2011
-
Messages postés
10
Date d'inscription
vendredi 8 juillet 2011
Statut
Membre
Dernière intervention
28 octobre 2011
-
Bonjour,

J'aimerais stocker le resultat de la commande dans la variable var:

sed -n '1p' PARAM_VAR | awk -F';' '{print $1}

J'ai essayé les commandes ci-dessous sans succès :
var = sed -n '1p' PARAM_VAR | awk -F';' '{print $1}
var = 'sed -n '1p' PARAM_VAR | awk -F';' '{print $1}'
$var = "$(sed -n '1p' PARAM_VAR | awk -F';' '{print $1})";

HELP PLEASE...

1 réponse

Messages postés
36299
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
5 960
Salut,

Pas d'espace autour du signe égale, et pas de dollar ($) pour la déclaration :

var="$(sed -n '1p' PARAM_VAR | awk -F';' '{print $1})"

Pas la peine de "sed" non plus :

var=$(awk -F';' 'NR==1 {print $1}' PARAM_VAR)


Édit : Correction guillemet et parenthèse en trop
Zen my nuggets ;-)
Faites un geste pour l'environnement, fermez vos fenêtres et adoptez un manchot.
Messages postés
10
Date d'inscription
vendredi 8 juillet 2011
Statut
Membre
Dernière intervention
28 octobre 2011

Merci pour ta réponse rapide.

Avec ta commande : var=$(awk -F';' 'NR==1 {print $1})" PARAM_VAR
j'ai l'erreur : syntax error at line 1 : ''' unmatched.

Pour le "sed", je pense que c'est nécessaire. Je t'explique le contexte.
Mon fichier en entrée PARAM_VAR contient :
toto;
titi;

Et je veux récupérer "toto" sans le ";" pour le stocker dans une variable.

Merci bcp
Messages postés
36299
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
5 960
Oups j'ai laissé un résidu de guillemet ;-((

var=$(awk -F';' 'NR==1 {print $1}' PARAM_VAR )

Devrait aller mieux, sorry ;-)
Messages postés
10
Date d'inscription
vendredi 8 juillet 2011
Statut
Membre
Dernière intervention
28 octobre 2011

NICKEL.. NICKEL .. NICKEL.

Merci beaucoup.