Awk

Como analisar o arquivo delimitado por tabulação usando 'awk'

Como analisar o arquivo delimitado por tabulação usando 'awk'

'tab' é usado como separador no arquivo delimitado por tabulação. Este tipo de arquivo de texto é criado para armazenar vários tipos de dados de texto em um formato estruturado.  Existem diferentes tipos de comando no Linux para analisar este tipo de arquivo.  O comando 'awk' é uma das maneiras de analisar o arquivo delimitado por tabulação de diferentes maneiras. O uso do comando 'awk' para ler o arquivo delimitado por tabulação é mostrado neste tutorial.

Crie um arquivo delimitado por tabulação:

Crie um arquivo de texto chamado Comercial.TXT com o seguinte conteúdo para testar os comandos deste tutorial. Este arquivo contém o nome do usuário, e-mail, nome de usuário e senha.

Comercial.TXT

Nome Email Nome de usuário Senha
Md. Robin [email protegido] robin89 563425
Nila Hasan [email protegido] nila78 245667
Mirza Abbas [email protegido] mirza23 534788
Aornob Hasan [protegido por e-mail] arnob45 778473
Nuhas Ahsan [email protegido] nuhas34 563452

Exemplo-1: imprime a segunda coluna de um arquivo delimitado por tabulação usando a opção -F

O seguinte comando 'sed' irá imprimir a segunda coluna de um arquivo de texto delimitado por tabulação. Aqui o '-F' opção é usada para definir o separador de campo do arquivo.

usuários $ cat.TXT
$ awk -F '\ t' 'print $ 2' usuários.TXT

A seguinte saída aparecerá após a execução dos comandos. A segunda coluna do arquivo contém os endereços de e-mail do usuário, que são exibidos como saída.

Exemplo-2: Imprima a primeira coluna de um arquivo delimitado por tabulação usando a variável FS

O seguinte comando 'sed' irá imprimir a primeira coluna de um arquivo de texto delimitado por tabulação. Aqui, FS A variável (separador de campo) é usada para definir o separador de campo do arquivo.

usuários $ cat.TXT
$ awk 'print $ 1' FS = '\ t' usuários.TXT

A seguinte saída aparecerá após a execução dos comandos. A primeira coluna do arquivo contém os nomes do usuário, que são exibidos como saída.

Exemplo-3: Imprima a terceira coluna de um arquivo delimitado por tabulação com formatação

O seguinte comando 'sed' imprimirá a terceira coluna do arquivo de texto delimitado por tabulação com formatação usando o FS variável e printf. Aqui o FS variável é usada para definir o separador de campo do arquivo.

usuários $ cat.TXT
$ awk 'BEGIN FS = "\ t" printf "% 10s \ n", $ 3' usuários.TXT

A seguinte saída aparecerá após a execução dos comandos. A terceira coluna do arquivo contém o nome de usuário que foi impresso aqui.

Exemplo 4: Imprima a terceira e a quarta colunas do arquivo delimitado por tabulação usando OFS

OFS (separador de campo de saída) é usado para adicionar um separador de campo na saída. O seguinte comando 'awk' irá dividir o conteúdo do arquivo com base no separador (\ t) e imprimir a 3ª e 4ª colunas usando a guia (\ t) como separador.

usuários $ cat.TXT
$ awk -F "\ t" 'OFS = "\ t" print $ 3, $ 4> ("output.usuários txt ") '.TXT
saída de $ cat.TXT

A seguinte saída aparecerá após a execução dos comandos acima. A 3ª e 4ª colunas contêm o nome de usuário e a senha, que foram impressos aqui.

Exemplo 5: Substitua o conteúdo específico do arquivo delimitado por tabulação

A função sub () é usada em 'awk para comandar a substituição. O seguinte comando 'awk' irá pesquisar o número 45 e substituí-lo pelo número 90 se o número de pesquisa existir no arquivo. Após a substituição, o conteúdo do arquivo será armazenado na saída.arquivo txt.

usuários $ cat.TXT
$ awk -F "\ t" 'sub (/ 45 /, 90); imprimir' usuários.txt> output.TXT
saída de $ cat.TXT

A seguinte saída aparecerá após a execução dos comandos acima. A saída.O arquivo txt mostra o conteúdo modificado após aplicar a substituição. Aqui, o conteúdo da 5ª linha foi modificado e 'arnob45' foi alterado para 'arnob90'.

Exemplo 6: Adicionar string no início de cada linha de um arquivo delimitado por tabulação

A seguir, o comando 'awk', a opção '-F' é ​​usada para dividir o conteúdo do arquivo com base na guia (\ t). OFS costumava adicionar uma vírgula (,) como um separador de campo na saída. A função sub () é usada para adicionar a string '- →' no início de cada linha da saída.

usuários $ cat.TXT
$ awk -F "\ t" 'OFS = ","; sub (/ ^ /, "---->"); imprimir $ 1, $ 2, $ 3' usuários.TXT

A seguinte saída aparecerá após a execução dos comandos acima. Cada valor de campo é separado por vírgula (,) e uma string é adicionada no início de cada linha.

Exemplo 7: substitua o valor de um arquivo delimitado por tabulação usando a função gsub ()

A função gsub () é usada no comando 'awk' para substituição global. Todos os valores de string do arquivo irão substituir onde o padrão de pesquisa corresponde. A principal diferença entre as funções sub () e gsub () é que a função sub () interrompe a tarefa de substituição após encontrar a primeira correspondência, e a função gsub () pesquisa o padrão no final do arquivo para substituição. O seguinte comando 'awk' pesquisará a palavra 'nila' e 'Mira' globalmente no arquivo e substituirá todas as ocorrências pelo texto, 'Nome inválido', onde a palavra pesquisada corresponde.

usuários $ cat.TXT
$ awk -F '\ t' 'gsub (/ nila | Mira /, "Nome inválido"); print 'usuários.TXT

A seguinte saída aparecerá após a execução dos comandos acima. A palavra 'nila' existe duas vezes na 3ª linha do arquivo que foi substituída pela palavra 'Nome inválido' na saída.

Exemplo 8: Imprimir o conteúdo formatado de um arquivo delimitado por tabulação

O seguinte comando 'awk' irá imprimir a primeira e a segunda colunas do arquivo com formatação usando printf. A saída mostrará o nome do usuário colocando o endereço de e-mail entre colchetes.

usuários $ cat.TXT
$ awk -F '\ t' 'printf "% s (% s) \ n", $ 1, $ 2' usuários.TXT

A seguinte saída aparecerá após a execução dos comandos acima.

Conclusão

Qualquer arquivo delimitado por tabulação pode ser facilmente analisado e impresso com outro delimitador usando o comando 'awk'. As maneiras de analisar arquivos delimitados por tabulação e imprimir em diferentes formatos foram mostradas neste tutorial usando vários exemplos. Os usos das funções sub () e gsub () no comando 'awk' para substituir o conteúdo do arquivo delimitado por tabulação também são explicados neste tutorial. Espero que este tutorial ajude os leitores a analisar o arquivo delimitado por tabulação facilmente depois de praticar os exemplos deste tutorial corretamente.

Ferramentas úteis para jogadores de Linux
Se você gosta de jogar no Linux, é provável que tenha usado aplicativos e utilitários como Wine, Lutris e OBS Studio para melhorar a experiência de jo...
Jogos HD Remasterizados para Linux que nunca tiveram uma versão Linux anterior
Muitos desenvolvedores e editores de jogos estão apresentando remasterização em HD de jogos antigos para estender a vida da franquia, por favor, os fã...
Como usar o AutoKey para automatizar jogos Linux
AutoKey é um utilitário de automação de desktop para Linux e X11, programado em Python 3, GTK e Qt. Usando sua funcionalidade de script e MACRO, você ...