Example -1: Definindo e imprimindo variável
O comando 'awk' usa a opção '-v' para definir a variável. Neste exemplo, o myvar A variável é definida no comando 'awk' para armazenar o valor, “Variável AWK” que é impresso mais tarde. Execute o seguinte comando do terminal para verificar a saída.
$ echo | awk -v myvar = 'variável awk' 'print myvar'
Saída:
Exemplo - 2: Usando a variável shell no AWK com uma única cotação e cotação dupla
O exemplo mostra como a variável shell pode ser usada comando 'awk'. Aqui, uma variável de shell, myvar é declarado com o valor, “Dica do Linux” No primeiro comando. O símbolo '$' é usado com um nome de variável de shell para ler o valor. O segundo comando lê a variável, $ myval com uma única citação (') e o terceiro comando lê a variável $ myvar com citação dupla (“) na declaração' awk '.
$ myvar = "linux dica"
$ echo | awk -v awkvar = '$ myvar' 'imprima awkvar; '
$ echo | awk -v awkvar = "$ myvar" 'imprima awkvar; '
Saída:
É mostrado na saída que o valor de $ myvar não pode ser lido quando está fechado com uma única citação (') e a saída é $ myvar. O valor de $ myvar é impresso quando está fechado com uma cotação dupla (“).
Exemplo - 3: Lendo a variável argc em Awk
A variável argc é usada para contar o número total de argumentos da linha de comando. Três variáveis de argumentos da linha de comando (T1, T2, T3) são passadas no seguinte script AWK. Aqui, o número total de argumentos com o script é 4. Execute o script do terminal.
$ AWK 'BEGIN PRIM "TOTAL AGGUMENTES =", ARGC' T1 T2 T3
Saída:
A saída a seguir aparecerá após a execução do script.
Exemplo - 4: Lendo o conteúdo do arquivo por variáveis de argumento
Crie um arquivo de texto chamado cliente.TXT com o seguinte conteúdo para praticar este exemplo. Aqui, todos os campos do arquivo são separados por solteiro aba espaço.
cliente.TXT
Nome de identificação
103847 John Micheal
209485 Watson
974732 Mira Hossain
O comando AWK pode ler cada campo de qualquer arquivo de texto por variáveis de argumento. Existem dois campos em cliente.TXT arquivo. Estes são id e nome. O script a seguir imprimirá esses dois campos por variáveis de argumento, $ 1 e $ 2 separando dois aba espaços. Execute o script do terminal.
$ CAT CLIENTE.TXT
$ CAT CLIENTE.txt | awk 'print $ 1 "\ t \ t" $ 2;'
Saída:
A saída a seguir aparecerá após a execução dos comandos acima.
Exemplo- 5: Usando variável interna, FS e opção de separador de campo com comando AWK
A variável FS é usada no comando AWK como um separador de campo. O espaço é usado como um valor padrão do FS. O seguinte comando lerá o arquivo cliente.TXT Usando o espaço como separador de campo e imprima o conteúdo do arquivo. Execute o comando do terminal.
$ AWK FS Cliente.TXT
Saída:
A saída a seguir aparecerá após a execução do script.
O comando AWK pode usar outros caracteres como separador de campo usando a opção '-f'. Crie um arquivo de texto chamado produtos.TXT com o seguinte conteúdo em que ':' é usado como um separador de campo.
produtos.TXT
101: Bolo: $ 30
102: lápis: $ 5
103: sabão: $ 3
104: Shampoo: $ 10
Existem três campos no arquivo, produtos.TXT que contém ID do produto, nome e preço. O comando AWK a seguir imprimirá apenas o segundo campo de cada linha. Execute os comandos do terminal.
$ CAT Product.TXT
$ awk -f ':' 'print $ 2' produto.TXT
Saída:
Aqui, o primeiro comando imprimiu o conteúdo de produtos.TXT e o segundo comando imprimiu apenas o segundo campo do arquivo.
Exemplo - 6: Usando variável interna, nr com comando AWK
A variável NR é usada no comando AWK para contar o número total de registros ou linhas de um arquivo. Crie um arquivo de texto chamado estudante.TXT Para testar a função desta variável.
estudante.TXT
Semestre em lote
João 20 3
Mira 22 1
Ella 18
Charle 15 8
O script AWK a seguir imprimirá as três primeiras linhas de produtos.TXT arquivo. Aqui, uma condição é adicionada usando a variável NR. O comando imprimirá as linhas onde o valor da NR é menor que 4. Execute o script do terminal.
Saída:
A saída a seguir aparecerá após a execução do script.
$ CAT Student.txt | Awk 'nr < 4'
Exemplo - 7: Usando variável interna, NF com comando AWK
A variável NF é usada no comando AWK para contar o número total de campos em cada linha de um arquivo. O seguinte script AWK é aplicado para o arquivo, estudante.TXT que é criado no exemplo anterior. O script imprimirá essas linhas de estudante.TXT Arquivo onde os campos totais são inferiores a 3. Execute o comando do terminal.
$ CAT Student.txt | Awk 'nf < 3'
Saída:
Existe apenas uma linha no arquivo em que o número total de campos é menor que 3 que é impresso como saída.
Exemplo - 8: Usando variável interna, OFS com comando AWK
O OFS variável é usado no comando AWK para adicionar separador de campo de saída na saída. produtos.TXT O arquivo é usado neste exemplo para mostrar o uso de variável de OFS. ':' é usado como separador de campo no produto.arquivo txt. O script AWK a seguir usado '->' AS OFS VALE e, o segundo e o terceiro campos do arquivo serão impressos adicionando este separador. Execute os comandos do terminal.
$ CAT Product.TXT
$ awk -f ':' 'begin ofs = " ->"; print $ 2, $ 3;' produto.TXT
Saída:
A saída a seguir imprimirá após a execução dos comandos.
Os usos mais comuns das variáveis awk são tentados explicar neste tutorial. Esperança, o leitor poderá usar variáveis AWK corretamente no script depois de praticar este tutorial.