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