Pegando espaços em branco com grep

O grep prove atalhos para capturar algumas classes, para espaços em branco e tabs você pode utilizar [[:space:]] ou [[:blank:]].

Como exemplo vamos usar o arquivo abaixo:

1
2
3
4
vinicius@ultrav:/tmp$ cat file.txt 
  Hello Grep! espaços
 Hello Grep! sem espaços
    Hello Grep! tab

Tentando filtrar linhas que comecem com a palavra "Hello":

1
2
vinicius@ultrav:/tmp$ grep ^Hello file.txt 
Hello Grep! sem espaços

Somente a linha sem espaços ou tab casa com a nossa busca. Usando -E e o atalho [[:blank:]] é possível casar também as linhas que comecem com espaços ou tabs:

1
2
3
4
vinicius@ultrav:/tmp$ grep -E "^[[:blank:]]*Hello" file.txt 
  Hello Grep! espaços
Hello Grep! sem espaços
   Hello Grep! tab
[, , ]

Comentários