Como posso corresponder apenas ao literal "home.domain.net"?
Você precisa escapar dos caracteres .
usando \
. Então o único caractere regexp especial é o segundo $
.
match=home\.domain\.net
grep " $match$" file
Exemplo:
$ cat file
127.0.0.1 home-domain.net
127.0.0.1 here.home-domain.net
127.0.0.1 home-domain.netn
127.0.0.1 home.domain.net
127.0.0.1 home.domain.net.some
$ match=home\.domain\.net
$ grep " $match$" file
127.0.0.1 home-domain.net
127.0.0.1 home.domain.net
Nota:
-
127.0.0.1 home-domain.net
é repetido no seu arquivo de host de exemplo.
Fonte grep - Pesquisar arquivo (s) para texto específico.
Leitura Adicional
- Um índice A-Z da linha de comando do Bash para Linux - Uma excelente referência para todas as coisas relacionadas à linha de comando do Bash.
- grep - Pesquisar arquivo (s) para texto específico.