Dada chave get value da tabela de consulta em * nix?

0

Eu tenho uma "tabela de consulta" table.txt que tem duas colunas

key1 value1
key2 value2
key3 value3
....

Agora, é dada uma chave keyQ , como posso obter seu valor?

Eu tentei

v=$(cat table.txt | awk '$1=="${key}" {echo $2}),

mas parece que isso não está funcionando com várias linhas.

    
por Sibbs Gambling 04.08.2016 / 16:53

1 resposta

3

Você tem que passar awk a variável com a opção -v

KEY=key2
awk -v key=${KEY} '$1==key { print $2 }' table.txt

Se você quiser sair após o primeiro jogo, poderá usar.

KEY=key2
awk -v key=${KEY} '$1==key { print $2; exit }' table.txt

Recomendamos também que você leia o uso inútil do gato .

    
por 04.08.2016 / 16:57