Como usar o separador awk de aspas simples?

Como usar o separador awk de aspas simples?

Eu gostaria de usar o awk para extrair informações da saída SQL como a seguir:

(contagem(classe de servidor distinta)='2')

E preciso extrair o número, que é 2 neste exemplo.

Eu gostaria de fazer algo como o seguinte, mas não consigo descobrir como escapar da aspa simples:

<sqlCommand> | awk 'BEGIN{FS="'"}{print $2}'

Como posso obter uma aspa simples literal como meu separador de campo no awk?

Responder1

Para inserir um caractere de aspas simples em uma string entre aspas simples, termine a string atual, escreva "'"ou \'e comece a string novamente.

No seu exemplo, isso é

awk 'BEGIN{FS="'"'"'"}{print $2}'

ou

awk 'BEGIN{FS="'\''"}{print $2}'

No entanto, usar a -Fopção para especificar o separador de campo resultará em um código mais legível:

awk -F\' '{print $2}'

informação relacionada