Em ambientes GNU/Linux, a combinação de comandos por meio de...

Próximas questões
Com base no mesmo assunto
Q4035451 Sistemas Operacionais
Em ambientes GNU/Linux, a combinação de comandos por meio de pipes é amplamente utilizada para processar e analisar arquivos de log. Carla, Analista de Sistemas do Badesul, precisa identificar quantas linhas do arquivo “/var/log/sistema.log” contêm a palavra “ERRO”, a fim de elaborar um relatório de falhas do sistema. Considerando o uso de pipes para encadear comandos no GNU/Linux, assinale a alternativa que apresenta o comando que realiza CORRETAMENTE essa tarefa.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: A decisão estava em identificar o comando que conta as linhas do arquivo contendo a palavra indicada, e não palavras nem nomes de arquivos.

Tema central: grep e wc -l
Análise das alternativas
A
Errada
Está errada porque usa find com -name "ERRO", e find serve para localizar arquivos ou diretórios no sistema de arquivos, não para procurar conteúdo textual dentro de /var/log/sistema.log.
B
Errada
Está errada porque, embora grep filtre as linhas com "ERRO", o comando final é wc -w, que conta palavras, não linhas. O erro decisivo é a métrica de contagem.
C
Certa
A alternativa C aplica o critério exato pedido: grep "ERRO" /var/log/sistema.log seleciona, no arquivo informado, as linhas que contêm a palavra "ERRO"; em seguida, o pipe envia esse resultado para wc -l, que conta a quantidade de linhas da saída. Como a tarefa é justamente obter o número de linhas do arquivo que contêm essa palavra, a operação corresponde integralmente ao que foi solicitado.
D
Errada
Está errada por dois motivos concretos: a forma apresentada não corresponde ao uso simples correto de grep para buscar o padrão no arquivo indicado, pois inverte a ordem posicional esperada entre padrão e arquivo; além disso, usa wc -w, que conta palavras, quando o pedido é contar linhas.
E
Errada
Está errada porque ls /var/log/ gera uma listagem de nomes de arquivos do diretório, e não analisa o conteúdo de /var/log/sistema.log. Além disso, wc -w conta palavras, não linhas.
Pegadinha da questão
Confundir busca em conteúdo com busca por nome de arquivo e trocar contagem de linhas por contagem de palavras.
Dica para questões semelhantes
  • Para contar linhas com um termo em um arquivo, filtre com grep e finalize com wc -l.
  • Confirme se o comando atua sobre o conteúdo do arquivo pedido, e não sobre nomes ou listagens.
  • Antes de escolher o wc, verifique a unidade pedida: linhas ou palavras.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo