DEV Community

Kauan Amorim da Silva
Kauan Amorim da Silva

Posted on

1

Pesquisando conteúdo de arquivos - Série Linux

Muitas vezes quando estamos procurando um arquivo e queremos algo em seu conteudo usamos o comando cat. Porém esse mesmo comando nos da todo o conteúdo do arquivo e passamos muito tempo dando scroll no terminal para achar o que estamos procurando.

Para conseguirmos filtrar o conteúdo do arquivo, pesquisando o que estamos procurando, podemos utilizar o grep. Esse comando nos ajudar a pesquisar tanto em arquivos, diretórios e subdiretórios o conteúdo procurado.

Exemplo de comando CAT.

# cat [option] <filename>

cd ~                  # entramos na pasta home
mkdir cat-test        # criamos uma pasta teste
cd cat-test           # entramos na pasta teste
cp /etc/services .    # copiamos o arquivo services da nossa máquina
cat services          # usamos o cat para pegar o conteúdo do arquivo services

Enter fullscreen mode Exit fullscreen mode

Exemplo de comando GREP.

# grep [option] <search-value> <where-to-look>

cd ~                 # entramos na pasta home
mkdir grep-test      # criamos uma pasta teste
cd grep-test         # entramos na pasta teste
cp /etc/services .   # copiamos o arquivo services da nossa máquina.
cp /etc/passwd .     # copiamos o arquivo passwd da nossa máquina.
grep http *          # pesquisamos http em qualquer arquivo do diretório corrente.
                                         # será listado o conteúdo dos arquivos que tem a palavra http. 
Enter fullscreen mode Exit fullscreen mode

Options

Logo após escrevermos o nome do comando, podemos colocar uma de suas opções de execução e aqui serão descritas algumas dessas opções (-i -l -L -r).

-i | --ignore-case

Essa opção faz com que a pesquisa do grep ignore o case sensitive (case insensitive).

# grep [option] <search-value> <where-to-look>

cd ~                # entramos na pasta home
mkdir grep-test     # criamos uma pasta teste
cd grep-test        # entramos na pasta teste
cp /etc/services .  # copiamos o arquivo services da nossa máquina.
cp /etc/passwd .    # copiamos o arquivo passwd da nossa máquina.
grep -i http *      # pesquisamos http em qualquer arquivo do diretório corrente.
                                        # será listado o conteúdo dos arquivos que tem a palavra http sem case sensitive.
Enter fullscreen mode Exit fullscreen mode

-l | --file-with-matches

Essa opção faz com que sejam listados os arquivos que contém o conteúdo procurado.

# grep [option] <search-value> <where-to-look>

cd ~                # entramos na pasta home
mkdir grep-test     # criamos uma pasta teste
cd grep-test        # entramos na pasta teste
cp /etc/services .  # copiamos o arquivo services da nossa máquina.
cp /etc/passwd .    # copiamos o arquivo passwd da nossa máquina.
grep -l http *      # pesquisamos http em qualquer arquivo do diretório corrente.
                                        # será listado os arquivos que tem o valor pesquisado.
Enter fullscreen mode Exit fullscreen mode

-L --files-without-match

Essa opção faz com que sejam listados os arquivos que não contém o conteúdo procurado.

# grep [option] <search-value> <where-to-look>

cd ~                # entramos na pasta home
mkdir grep-test     # criamos uma pasta teste
cd grep-test        # entramos na pasta teste
cp /etc/services .  # copiamos o arquivo services da nossa máquina.
cp /etc/passwd .    # copiamos o arquivo passwd da nossa máquina.
grep -L http *      # pesquisamos http em qualquer arquivo do diretório corrente.
                                        # será listado os arquivos que não tem o valor pesquisado.
Enter fullscreen mode Exit fullscreen mode

-r | --recursive

Essa opção faz com que o que for pesquisado, não se limite ao diretório corrente, mas que consiga pesquisar em subdiretórios.

# grep [option] <search-value> <where-to-look>

cd ~                             # entramos na pasta home
mkdir grep-test                  # criamos uma pasta teste
cd grep-test                     # entramos na pasta teste
cp /etc/services .               # copiamos o arquivo services da nossa máquina.
cp /etc/passwd .                 # copiamos o arquivo passwd da nossa máquina.
mkdir sub                        # criamos a pasta sub
cp /etc/services ./sub/          # copiamos novamente o arquivo services, mas agora para a pasta sub
grep -r http *                   # pesquisamos http em qualquer arquivo do diretório corrente e subdiretórios.
                                                     # será listado o conteúdo dos arquivos que tem o valor pesquisado, tanto arquivos do diretório atual quanto em subdiretórios.
Enter fullscreen mode Exit fullscreen mode

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here →

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay