Questão de Sistemas Operacionais — Geral — VUNESP 2024
Sistemas Operacionais›Geral
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”.
Agrep -c -i data file.txt
Bgrep -c -v data file.txt
Cgrep -n -i data file.txt
Dgrep -n -v data file.txt
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-c conta linhas
2-v inverte seleção
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.