¿Cómo imprimir un determinado campo dependiendo de la entrada?

¿Cómo imprimir un determinado campo dependiendo de la entrada?

Digamos que un archivo de texto tiene 2 columnas, una es el nombre del vino y la otra es un número que indica cuántas botellas hay.

Quiero crear un script que, cuando se ejecute, el usuario ingrese un número del 1 al 30 y me mostrará alfabéticamente el nombre de todos los vinos que tengan ese número en stock.

¿Cómo puedo hacer eso?

Respuesta1

Si sus campos están definidos por espacios en blanco, simplemente puede hacer:

awk '$2==30' file

Eso imprimirá todas las líneas filecuyo segundo campo sea 30. Si solo desea el primer campo, el nombre, use:

awk '$2==30{print $1}' file

Y para obtenerlos alfabéticamente, pase el resultado mediante sort:

awk '$2==30{print $1}' file | sort

información relacionada