Como ler a entrada AWK de Stdin em Linux - Parte 7

- 4870
- 1404
- Wendell Legros
Nas partes anteriores da série Awk Tool, analisamos a leitura de entrada principalmente de um (s) arquivo (s), mas e se você quiser ler a entrada de Stdin.
Nesta parte 7 da série AWK, examinaremos alguns exemplos onde você pode filtrar a saída de outros comandos em vez de ler a entrada de um arquivo.
Começaremos com o utilitário dir que funciona semelhante ao comando ls, no primeiro exemplo abaixo, usamos a saída de dir -l
Comando como entrada para a AWK imprimir o nome de usuário do proprietário, o nome do grupo e os arquivos que ele possui no diretório atual:
# dir -l | awk 'print $ 3, $ 4, $ 9;'

Dê uma olhada em outro exemplo em que empregamos expressões AWK, aqui, queremos imprimir arquivos de propriedade do raiz Usuário usando uma expressão para filtrar strings como no comando AWK abaixo:
# dir -l | awk '$ 3 == "root" imprimir $ 1, $ 3, $ 4, $ 9;'

O comando acima inclui o (==)
Operador de comparação para nos ajudar a filtrar os arquivos no diretório atual, de propriedade do usuário root. Isso é alcançado usando a expressão $ 3 == "raiz"
.
Vejamos outro exemplo de onde usamos um operador de comparação AWK para combinar com uma certa string.
Aqui, usamos o utilitário de gatos para visualizar o conteúdo de um arquivo nomeado Tecmint_deals.TXT E queremos ver os acordos do tipo Tecnologia Somente, então executaremos os seguintes comandos:
# Cat Tecmint_Deals.txt # cat tecmint_deals.txt | Awk '$ 4 ~ /Tech /print' # Cat Tecmint_Deals.txt | Awk '$ 4 ~ /Tech /print'

No exemplo acima, usamos o valor ~ /padrão /
Operador de comparação, mas há dois comandos para tentar trazer algo muito importante.
Quando você executa o comando com padrão tecnologia Nada é impresso porque não há negócio desse tipo, mas com Tecnologia, você recebe ofertas do tipo Tecnologia.
Portanto, sempre tenha cuidado ao usar este operador de comparação, é sensível ao maiúsculas, como vimos acima.
Você sempre pode usar a saída de outro comando como entrada para awk, em vez de ler a entrada de um arquivo, isso é muito simples, como analisamos nos exemplos acima.
Espero que os exemplos tenham sido claros o suficiente para você entender, se tiver alguma preocupação, pode expressá -los através da seção de comentários abaixo e lembrar de verificar a próxima parte da série em que vamos olhar Awk Recursos como variáveis, expressões numéricas e operadores de atribuição.
- « Como configurar o servidor de correio Postfix e Dovecot com o banco de dados (MARIADB) com segurança - Parte 1
- Configurando o monitoramento em tempo real com 'gânglios' para grades e grupos de servidores Linux »