Use esse comando:
awk '$2=="python"{print}' a.txt | sort -dk3
Se o segundo campo for python
, imprima a linha inteira e deixe sort
no terceiro campo.
Eu tenho um arquivo de texto contendo uma lista de notas dos alunos:
Andrew cooking A
Andrew cooking B
Andrew computing F
Steven java C
Steven python E
Ben C++ D
Ben python C
Jamie java E
Jamie C++ E
Jamie C++ B
Jamie python E
Gerry python E
Phil python F
Estou tentando usar o comando grep para mostrar todos os resultados do python, classificados da melhor para a pior nota. O arquivo é chamado a.txt
. Eu tentei grep python a.txt | sort -d
que não funciona, então eu estava procurando por um pouco de ajuda sobre isso.
Obrigado
Use esse comando:
awk '$2=="python"{print}' a.txt | sort -dk3
Se o segundo campo for python
, imprima a linha inteira e deixe sort
no terceiro campo.
Se você não estiver familiarizado com awk
, poderá achar a seguinte solução mais fácil de entender:
grep "python" a.txt | sort -dk 3 | cut -d " " -f 1,3
grep
seleciona linhas que contêm determinada palavra
sort
está classificando em ordem decrescente com base na terceira chave
cut
está se livrando da palavra 'python'. Se estiver aparecendo em todas as linhas, não traz nenhuma informação para a foto.
Resultado:
Ben C
Gerry E
Jamie E
Steven E
Phil F
Tags grep text-processing