Aide sur syntaxe awk
Résolu
kanar
Messages postés
20
Statut
Membre
-
kanar Messages postés 20 Statut Membre -
kanar Messages postés 20 Statut Membre -
Bonjour,
ou Re pour ceux qui m'ont déjà lu aujourd'hui.
J'ai besoin de remplacer une variable dans un fichier. Chose que je peut faire manuellement bien sûr, mais je souhaite placer la commande dans un script.
Le but est remplacer $(GDAL_ROOT) par .
Voici la commande que j'exécute :
cat GNUmakefile | awk '{ sub("$(GDAL_ROOT)",".");print}' > `pwd`/GNUmakefile
Il ne remplace pas $(GDAL_ROOT), je suppose donc qu'il y a une erreur de syntaxe dans ma recherche.
Pourtant quand je fait :
printf 'Test de remplacement : "$(GDAL_ROOT)"'
Ce sont les bon caractères :
Test de remplacement : "$(GDAL_ROOT)"
Quelqu'un a une petite idée d'où ça peut venir ?
ou Re pour ceux qui m'ont déjà lu aujourd'hui.
J'ai besoin de remplacer une variable dans un fichier. Chose que je peut faire manuellement bien sûr, mais je souhaite placer la commande dans un script.
Le but est remplacer $(GDAL_ROOT) par .
Voici la commande que j'exécute :
cat GNUmakefile | awk '{ sub("$(GDAL_ROOT)",".");print}' > `pwd`/GNUmakefile
Il ne remplace pas $(GDAL_ROOT), je suppose donc qu'il y a une erreur de syntaxe dans ma recherche.
Pourtant quand je fait :
printf 'Test de remplacement : "$(GDAL_ROOT)"'
Ce sont les bon caractères :
Test de remplacement : "$(GDAL_ROOT)"
Quelqu'un a une petite idée d'où ça peut venir ?
A voir également:
- Aide sur syntaxe awk
- La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte - Forum Logiciels
- Trouver erreur de syntaxe fichier txt pix ✓ - Forum Windows
- Syntaxe après xcopy pour indiquer le répertoire courant - Forum Autoit / batch
- La syntaxe du nom de fichier de répertoire ou de volume est incorrecte ✓ - Forum Disque dur / SSD
- La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte. - Forum Windows 7
3 réponses
Re :)
deux choses.
1- Pourquoi ne pas affecter "." à ta variable ?
2- à ta place j'utiliserai sed :
Bien que je préfère la première solution, plus propre. :)
deux choses.
1- Pourquoi ne pas affecter "." à ta variable ?
2- à ta place j'utiliserai sed :
sed -e /$(GDAL_ROOT)/./g -i GNUmakefile
Bien que je préfère la première solution, plus propre. :)
Je connaissait pas le sed... Je vais aller travailler ça, la commande que tu m'a donné n'est pas tout à fait exacte ;)
Je ne peut malheureusement pas redéfinir la variable. Elle est définie dans un fichier d'include, et certaines commandes nécessitent des chemins absolus.