Se você quiser bash, você terá que corrigir o gawk ou chamar bash diretamente (a citação fica um pouco complicada):
gawk 'BEGIN {
script="if [[ \"porc\" == \"porc\" ]]; then echo yes; else echo no; fi"
system("bash -c '\''" script "'\''")
}'
Existe uma maneira de fazer o awk usar bash em vez de sh ao executar comandos do sistema usando a system() call?
Eu quero usar alguns recursos específicos do bash, como [[]] e < > operadores de comparação de string:
gawk 'BEGIN {system("if [[ \"porc\" == \"porc\" ]]; then echo yes; else echo no; fi")}'
sh: [[: not found
Se você quiser bash, você terá que corrigir o gawk ou chamar bash diretamente (a citação fica um pouco complicada):
gawk 'BEGIN {
script="if [[ \"porc\" == \"porc\" ]]; then echo yes; else echo no; fi"
system("bash -c '\''" script "'\''")
}'