Il y a plusieurs solutions pour ça, mais pour éviter de trop jouer avec les doubles / simples quotes, tu peux passer les variables à awk :
awk -F'|' -v"v1=$variable1" -v"v2=$variable2" '$3 ~ "^("v1"|"v2" )$"' fichier > fichier.out |
(le cat est inutile : useless use of cat, ou UUOC)
PS : je sais pas pourquoi, le forum rajoute un espace après "v2" au-dessus, et c'est pareil avec des balises code :
Code :
- awk -F'|' -v"v1=$variable1" -v"v2=$variable2" '$3 ~ "^("v1"|"v2" )$"' fichier > fichier.out
|
Et même sans balises :
awk -F'|' -v"v1=$variable1" -v"v2=$variable2" '$3 ~ "^("v1"|"v2" )$"' fichier > fichier.out
Il ne faut pas d'espace, sinon ça ne marche plus.
Voilà une astuce pour que ça ne rajoute pas d'espace : mettre le double quote en gras, le tout dans des balises code :
Code :
- awk -F'|' -v"v1=$variable1" -v"v2=$variable2" '$3 ~ "^("v1"|"v2")$"' fichier > fichier.out
|
Message édité par kajoux le 18-05-2020 à 15:38:49