![Como imprimir um determinado campo dependendo da entrada?](https://rvso.com/image/122417/Como%20imprimir%20um%20determinado%20campo%20dependendo%20da%20entrada%3F.png)
Digamos que um arquivo de texto tenha 2 colunas, uma é o nome do vinho e a outra é um número de quantas garrafas existem.
Quero criar um script que, quando executado, o usuário insira um número de 1 a 30 e me mostre em ordem alfabética o nome de todos os vinhos que ainda possuem esse número em estoque.
Como eu posso fazer isso?
Responder1
Se seus campos forem definidos por espaços em branco, você pode simplesmente fazer:
awk '$2==30' file
Isso imprimirá todas as linhas file
cujo segundo campo é 30
. Se você quiser apenas o primeiro campo, o nome, use:
awk '$2==30{print $1}' file
E para obtê-los em ordem alfabética, passe a saída por sort:
awk '$2==30{print $1}' file | sort