awk erro de sintaxe do comando

3
$ awk ' - /^Tom$/ {print}' names.txt

Estou tentando pesquisar um arquivo que tenha o segundo campo correspondente ao Tom.

Mas estou recebendo este erro:

awk: syntax error at source line 1
 context is
     - /^Tom$/ >>>  { <<< 
    
por Mint.K 17.01.2017 / 02:52

1 resposta

4

Você tem um erro de sintaxe. Deve ser

awk ' ~ /Tom/ {print}' names.txt

ou

awk ' == "Tom" {print}' names.txt

Observe que {print} é desnecessário. O Awk imprime linhas para as quais a condição correspondente é verdadeira automaticamente.

$ awk ' =="Tom"' input.txt                                                                                             
Edison, Tom

$ cat input.txt                                                                                                          
Washington, George
Edison, Tom
Tesla, Nik
    
por Sergiy Kolodyazhnyy 17.01.2017 / 03:45