Commande AWK avec une variable

Résolu
Maillon Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   -  
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

voilà en fait j'ai un fichier dans lequel j'ai ça par exemple :
[ScriptSettings]
LOCATION = "machine"
LANGUAGE = "fr"
TARGET_DIRECTORY = "/data/www"
URL = "http://svn.machine/svn_int"
TAGPATH1 = "trunk/1/3/1/"
TAGPATH2 = "trunk/1/3/1/"
TAGNAME1 = "1"
TAGNAME2 = "1"

j'appelle toutes les variables ci-dessus dans une script test.sh et j'aimerai récupérer une valeur de l'une des variables ci dessus : le trunk dans TAGPATH1.

Alors au début je voulais faire un awk -F"/" '{ print $0 } $TAGPATH1 > $VARIABLE et donc dans $VARIABLE j'aurai la valeur trunk, seulement ça marche pas.

Dans mon script test.sh si je fais un echo de $TAGPATH1 j'ai bien toute la valeur.

Tout en sachant que la valeur "trunk" peut avoir comme nom "branche".

Je pense qu'il faudrait tout prendre avant le premier chiffre dans cette variable mais je sais pas comment faire ça.

Si vous avez une idée j'aimerai beaucoup que vous m'en fassiez part, j'espère avoir été clair. :)

Merci beaucoup.

Cordialement,
A voir également:

3 réponses

Maillon Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   5
 
Alors peut etre que je pourrais essayer de récupérer avec un sed la valeur qui va du premier caractère au premier slash...

Je verais ça demain mais ça m'a l'air pas mal.

Cordialement,
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Salut,
Essaie :
grep 'TAGPATH1' | cut -d'=' -f2 

Cdt
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Oups petite erreur, j'ai oublié le nom du fichier.
grep 'TAGPATH1' TAGPATH1 | cut -d'=' -f2 

Cdt
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello

VARIABLE=$(echo $TAGPATH1 | awk -F"/\"" '{ print $2 }')
0