No Linux, existem diversos comandos para buscar informações no sistema de arquivos e dentro de arquivos. Abaixo, vamos explorar alguns desses comandos.
1. GREP
O comando grep é usado para procurar padrões específicos dentro de arquivos de texto. Utilizado para encontrar palavras-chave ou expressões regulares dentro de logs, códigos e documentos.
- Exemplo 1: Buscar a palavra “cachorro” dentro do arquivo arquivo1.txt.

- Exemplo 2: Buscar recursivamente a palavra “maçãs” em todos os arquivos de um diretório.

- Exemplo 3: Ignorar diferenciação entre maiúsculas e minúsculas.

2. FIND
O comando find permite pesquisar arquivos e diretórios com base em diferentes critérios, como nome, tipo, data de modificação e permissões.
- Exemplo 1: Buscar um arquivo chamado arquivo1.txt dentro da pasta /home.

- Exemplo 2: Buscar arquivos modificados nos últimos 7 dias.

- Exemplo 3: Buscar arquivos maiores que 100MB em um diretório.

- Exemplo 4: Encontrar todos os diretórios (-type d) dentro de um diretório.

- Exemplo 5: Encontra todos os arquivos com a extensão .txt dentro do diretório /home.

3. LOCATE
O comando locate é uma alternativa ao find, porém mais rápida, pois utiliza um banco de dados previamente atualizado com os caminhos dos arquivos no sistema. Esse banco de dados é gerado e atualizado periodicamente pelo comando updatedb.
Exemplo 1: Buscar arquivos que contenham “relatorio” no nome.

Para atualizar o banco de dados do locate antes de uma busca:

4. WHICH
O comando which exibe o caminho completo de um comando executável no sistema. Utilizado para descobrir onde um comando específico está instalado.
- Exemplo 1: Encontrar o caminho do comando nano.

- Exemplo 2: Encontrar o caminho do comando grep.

5. DIRETO DO CONCURSO
1. (Quadrix – 2024 – CFP – Técnico Administrativo – Suporte Técnico em Informática)
Em um sistema Linux, um psicólogo precisou analisar dados armazenados em um arquivo chamado pacientes.txt, que apresenta informações sensíveis. Antes de compartilhar o arquivo com sua equipe, ele decidiu remover todas as linhas que apresentam a palavra “confidencial”.
Com base nessa situação hipotética, julgue o item a seguir.
Para remover todas as linhas que contêm a palavra “confidencial”, o psicólogo deve fazer uso do comando grep “confidencial” | pacientes. txt.
COMENTÁRIO
Para remover todas as linhas que contêm a palavra “confidencial”, o psicólogo deve usar o comando grep -v da seguinte maneira:
grep -v “confidencial” pacientes.txt > pacientes_filtrado.txt
A opção -v exibe todas as linhas que não contêm o padrão especificado.
Errado.
2. (VUNESP – 2023 – DPE-SP – Agente de Defensoria – Administrador de Redes)
Foi digitado no terminal de um servidor Linux o seguinte comando.
grep 1 *
É correto afirmar que o retorno desse comando será
a) a primeira linha de todos os arquivos do diretório.
b) a primeira linha que contenha o caractere * de todos os arquivos do diretório.
c) toda linha que contenha o caractere * do primeiro arquivo do diretório.
d) toda linha que contenha o caractere 1 de todos os arquivos do diretório.
e) todas as linhas do primeiro arquivo do diretório.
COMENTÁRIO
Este comando realiza uma busca por todas as linhas que contenham o caractere “1” em todos os arquivos do diretório atual. Veja o significado de cada parte:
grep – Comando utilizado para buscar padrões dentro de arquivos.
1 – Padrão a ser pesquisado (qualquer linha contendo o número 1).
* – Corresponde a todos os arquivos do diretório atual.
Letra d.
3. (VUNESP – 2023 – EPC – Técnico de Informática)
Considere um arquivo com nome prova.txt que contém o seguinte conteúdo:
Boa
prova
!
Após um usuário de sistema operacional Linux digitar o comando no terminal
grep –v a prova.txt
será apresentado
a) Boa
prova
!
b) Boa
prova
c) a
a
d) 2
e) !
COMENTÁRIO
O comando grep busca por padrões dentro de arquivos, e a opção -v (inverte a busca) faz com que as linhas que contêm o caractere “a” sejam excluídas da saída.
Analisando o conteúdo do arquivo prova.txt temos:
Boa
prova
!
Dessa forma, analisando a execução do comando grep -v a prova.txt:
- “Boa” – Contém a letra “a” (será excluído).
- “prova” – Contém a letra “a” (será excluído).
- “!” – Não contém “a” (será exibido).
Portanto, a saída do comando será:
!
Letra e.
4. (Quadrix – 2023 – CRM – MG – Administrador de Rede)
Assinale a alternativa que apresenta o comando a ser inserido no sistema operacional Linux, para que seja criado um arquivo Shell script que remova todos os arquivos dentro do diretório /home/crmmg/médicos, que teve sua última modificação feita há trinta dias.
a) find /home/crmmg/medicos +mtime -30 -exec rm {} \;
b) find -rm /home/crmmg/medicos +mtime -30 \;
c) find /home/crmmg/medicos -mtime +30 -exec rm {} \;
d) find -rm /home/crmmg/medicos +mtime +30 \;
e) find -rm +mtime -30 /home/crmmg/medicos;
COMENTÁRIO
O comando find é utilizado para localizar arquivos e diretórios baseando-se em diversos critérios, como tempo de modificação, nome e tamanho.
No contexto da questão, queremos remover arquivos modificados há mais de 30 dias dentro do diretório /home/crmmg/medicos.
Analisando o comando: find /home/crmmg/medicos -mtime +30 -exec rm {} \;
- find /home/crmmg/medicos – Define o diretório onde a busca será realizada.
- -mtime +30 – Encontra arquivos modificados há mais de 30 dias.
- -exec rm {} \; – Para cada arquivo encontrado, executa o comando rm (remoção).
O {} representa os arquivos encontrados, e o \; indica o final do comando -exec.
Letra c.
5. (CESPE / CEBRASPE – 2020 – Prefeitura de Barra dos Coqueiros – SE – Técnico em Informática)
No diretório /etc de um computador com sistema Linux, encontra-se o arquivo teste.log, que possui apenas as quatro linhas listadas a seguir.
Aracaju capital de Sergipe Natal capital do Rio Grande Sergipe tem Barra dos Coqueiros Natal tem Mossoró
As duas linhas a seguir foram obtidas como resultado da execução de um comando no Linux.
Aracaju capital de Sergipe Sergipe tem Barra dos Coqueiros
Considerando essas informações, assinale a opção que apresenta o comando, no Linux, que retornará o resultado descrito.
a) find /etc/teste.log ‘Sergipe’
b) ls /etc/teste.log ‘Sergipe’
c) grep Sergipe /etc/teste.log
d) echo /etc/teste.log | ‘Sergipe’
e) locate ‘Sergipe’ /etc/teste.log
COMENTÁRIO
O comando grep é utilizado para buscar palavras ou padrões dentro de arquivos de texto.
Na questão, queremos filtrar as linhas do arquivo teste.log que contêm a palavra “Sergipe”.
Analisando o comando: grep Sergipe /etc/teste.log
- grep – Busca por uma palavra ou padrão dentro de arquivos.
- Sergipe – Palavra-chave que queremos encontrar.
- /etc/teste.log – Caminho do arquivo onde será feita a busca.
Esse comando retorna todas as linhas do arquivo que contêm a palavra “Sergipe”, o que corresponde exatamente à saída mencionada na questão:
Aracaju capital de Sergipe
Sergipe tem Barra dos Coqueiros
Letra c.
6. (FUNCERN – 2023 – Prefeitura de Jardim do Seridó – RN – Agente em Tecnologia da Informação)
Nos sistemas Linux, em comparação ao Windows, existem mais opções de como pesquisar por arquivos. Para ampliar as chances de localizar um arquivo, não importando se existem letras maiúsculas ou minúsculas, o comando usado é
a) find -p.
b) pesq -i.
c) locate -i.
d) locate -x.
COMENTÁRIO
O comando locate é utilizado para buscar arquivos no sistema rapidamente, pois ele consulta um banco de dados previamente atualizado. Para ignorar diferenças entre letras maiúsculas e minúsculas, utilizamos a opção -i.
Letra c.
Quer ficar por dentro dos concursos públicos abertos e previstos pelo Brasil? Clique nos links abaixo:
Receba gratuitamente no seu celular as principais notícias do mundo dos concursos. Clique no link abaixo e inscreva-se:
Participe da conversa