Pular para o conteúdo principal

Questão de Sistemas Operacionais — Geral — VUNESP 2024

Sistemas OperacionaisGeral
Código
vu212406
Banca
VUNESP
Órgão
Pref Piracicaba
Ano
2024
Cargo
Adm ( )

O comando grep em um sistema Linux tem como uma de suas funções primárias localizar strings em arquivos. Porém, dependendo dos parâmetros fornecidos, juntamente com o parâmetro ele pode ser utilizado para outros propósitos.

 

Assinale a alternativa que apresenta o uso do comando grep para retornar somente a quantidade de linhas de um arquivo que NÃO possui a string “data”.

  1. Agrep -c -i data file.txt
  2. Bgrep -c -v data file.txt
  3. Cgrep -n -i data file.txt
  4. Dgrep -n -v data file.txt
  5. Egrep -h -w data file.txt
Revelar gabarito e comentário

GabaritoB — grep -c -v data file.txt

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Comando grep no Linux: contagem de linhas sem correspondência

Gabarito: letra B. O comando grep -c -v data file.txt retorna somente a quantidade de linhas do arquivo que NÃO contêm a string "data", pois a opção -c conta as linhas correspondentes e a opção -v inverte a seleção, fazendo o grep selecionar apenas as linhas que não casam com o padrão. Essa é a combinação clássica para contar linhas que não possuem determinada string.

O grep é um filtro de texto que busca padrões (strings ou expressões regulares) em arquivos ou na entrada padrão. Sua função primária é localizar e exibir as linhas que correspondem ao padrão informado. Porém, com as opções adequadas, ele pode contar, inverter, numerar, ignorar maiúsculas/minúsculas, entre outras tarefas. Para entender a questão, é essencial dominar as opções mais cobradas em concursos:

  • -c (count): suprime a saída normal e exibe apenas o número de linhas que correspondem ao padrão.

  • -v (invert): inverte a seleção, ou seja, seleciona as linhas que NÃO correspondem ao padrão.

  • -i (ignore-case): ignora diferenças entre maiúsculas e minúsculas.

  • -n (line-number): exibe o número da linha junto com a linha correspondente.

  • -h (no-filename): suprime a exibição do nome do arquivo quando vários arquivos são pesquisados.

  • -w (word-regexp): seleciona apenas linhas que contêm a palavra inteira (delimitada por não-palavras).

A combinação -c -v é a resposta: -c conta, -v inverte. Juntas, contam as linhas que não contêm o padrão. É uma pegadinha comum trocar -v por -i ou -n, pois o candidato pode confundir "inverter" com "ignorar maiúsculas" ou "numerar".

Vamos analisar cada alternativa:

  1. 1-c conta linhas
  2. 2-v inverte seleção
  3. 3Juntas: contam o que NÃO casa
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

grep -c -i data file.txt conta as linhas que contêm "data", ignorando maiúsculas/minúsculas. A opção -i não inverte a seleção; ela apenas torna a busca case-insensitive. Portanto, retorna a quantidade de linhas que possuem a string, não as que não possuem.

Alternativa B — ✅ Correta ⟵ GABARITO

grep -c -v data file.txt combina -c (contagem) com -v (inversão). O -v faz o grep selecionar apenas as linhas que não contêm "data", e o -c conta essas linhas. Exatamente o que o enunciado pede: retornar somente a quantidade de linhas que NÃO possuem a string "data".

Alternativa C — ❌ Incorreta

grep -n -i data file.txt exibe as linhas que contêm "data" com seus respectivos números de linha, ignorando maiúsculas/minúsculas. Não há contagem (-c) nem inversão (-v), portanto não atende ao pedido.

Alternativa D — ❌ Incorreta

grep -n -v data file.txt exibe as linhas que não contêm "data", mas com numeração de linha (-n), não com contagem (-c). O enunciado pede a quantidade de linhas, não a listagem delas.

Alternativa E — ❌ Incorreta

grep -h -w data file.txt suprime o nome do arquivo (-h) e busca a palavra exata "data" (-w). Não há contagem nem inversão; apenas exibe as linhas correspondentes, sem atender ao requisito de quantidade de linhas que não possuem a string.

NÃO CAIA NESSA!

A banca explora a confusão entre as opções -i (ignorar maiúsculas), -n (numerar linhas) e -v (inverter seleção). O candidato que sabe que -c conta, mas não lembra que -v inverte, pode cair na alternativa A. Lembre-se: para contar o que não casa, use -c -v.

PEGA ESSA DICA!

Memorize as opções do grep em pares: -c (conta) + -v (inverte) = conta o que não casa; -n (numera) + -v = lista o que não casa. Na prova, leia o enunciado com atenção: se pedir "quantidade", procure -c; se pedir "não possui", procure -v.

Gabarito: letra B

Link permanente: /questoes/vu212406