com awk
:
awk '$4 == "LEC05" { print $2 }' /path/to/inputfile | sort > outputfile
Com grep
e cut
:
grep 'LEC05' /path/to/inputfile | cut -f2 | sort > outputfile
Por exemplo, suponha que tenhamos um arquivo chamado input.txt
, que contém
100 John Doe LEC05 12356
132 Carol Bon LEC05 156
122 Cavar Liktik LEC01 136
...
Este comando deve encontrar todos em LEC05
e imprimir seus primeiros nomes na ordem sorted
em um arquivo chamado output.txt
O comando deve ser um comando de uma linha (com pipes).
Não sei como isso seria feito.
see if LEC05 | find first name at index 1 | sort < input.txt > output.txt
Como faço o see if LEC05 | find first name at index 1
parte?
Mais awk-ness
awk '/LEC05/{ name[$2]++ } END { n = asorti( name,sname ); for ( i in sname ) print sname[i]}' input.txt