Questão de Sistemas Operacionais — Comandos — Quadrix 2025
- Código
- qg594731
- Banca
- Quadrix
- Órgão
- CFBio
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Desenvolvimento
- CCerto
- EErrado
GabaritoC — Certo
Gabarito: ✅ CERTO. O comando find /home/cfbio/documentos -type f -mtime +30 -exec rm -i {} \; realmente localiza arquivos comuns modificados há mais de 30 dias no diretório especificado e os exclui de forma interativa, pedindo confirmação para cada arquivo. A análise de cada parte do comando confirma a correção da afirmativa.
O comando find é uma ferramenta poderosa do Linux para pesquisar arquivos e diretórios com base em diversos critérios, como nome, tipo, tamanho, permissões e data de modificação. Sua sintaxe básica é find [caminho] [expressão], onde o caminho define o ponto de partida da busca e a expressão contém os testes e ações a serem aplicados. No comando em questão, temos:
/home/cfbio/documentos: o diretório onde a busca será realizada. O comando percorrerá recursivamente todos os subdiretórios a partir desse ponto.
-type f: filtra apenas arquivos comuns (regular files), excluindo diretórios, links simbólicos, dispositivos, etc. O tipo f é o que representa arquivos normais.
-mtime +30: seleciona arquivos cujo conteúdo foi modificado há mais de 30 dias. O -mtime conta dias completos desde a última modificação; o sinal + significa "mais que", ou seja, arquivos com data de modificação anterior a 30 dias atrás.
-exec rm -i {} \;: executa o comando rm (remoção) com a opção -i (interativa) para cada arquivo encontrado. O {} é substituído pelo caminho do arquivo atual, e o \; indica o fim do comando executado. A opção -i faz o rm perguntar ao usuário antes de cada exclusão, exigindo confirmação (y/n).
Portanto, a combinação dessas opções realiza exatamente o que o enunciado descreve: encontrar arquivos modificados há mais de 30 dias no diretório e excluí-los interativamente, solicitando confirmação para cada um. Não há erro de sintaxe ou de interpretação.
Uma pegadinha comum em questões sobre o find é confundir -mtime com -atime (tempo de acesso) ou -ctime (tempo de mudança de status), ou ainda inverter o sinal + e -. O -mtime +30 significa "mais de 30 dias", enquanto -mtime -30 significaria "menos de 30 dias" e -mtime 30 exatamente 30 dias. Além disso, a opção -exec é frequentemente confundida com -execdir, que executa o comando a partir do diretório do arquivo encontrado, mas aqui a diferença não afeta o resultado.
Outro ponto que pode gerar dúvida é o uso de rm -i versus rm -f. O -i (interativo) é o que garante a confirmação; sem ele, o rm excluiria silenciosamente. O -f (force) faria o oposto, ignorando avisos e não pedindo confirmação. A banca pode explorar essa troca em outras questões.
A afirmativa está correta porque o comando apresentado executa exatamente a ação descrita: busca por arquivos comuns (-type f) modificados há mais de 30 dias (-mtime +30) no diretório /home/cfbio/documentos e os exclui com confirmação (-exec rm -i {} \;). A opção -i do rm é a responsável por solicitar a confirmação antes de cada exclusão, tornando o processo interativo. Não há nenhum erro de sintaxe ou de lógica no comando.
Gabarito: ✅ CERTO
Link permanente: /questoes/qg594731