Pular para o conteúdo principal

Questão de Sistemas Operacionais — Geral — VUNESP 2023

Sistemas OperacionaisGeral
Código
vu197483
Banca
VUNESP
Órgão
CIJUN
Ano
2023
Cargo
Ana ( )
Considere o comando a seguir digitado no terminal de um sistema operacional Linux.   echo -e Boa \bProva   O valor que será apresentado no terminal como retorno do comando é:
  1. ABOA PROVA
  2. BBoa PROVA
  3. CBoaProva
  4. DBoa pROVA
  5. EBoa     Prova
Revelar gabarito e comentário

GabaritoC — BoaProva

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 echo e a opção -e no Linux

Gabarito: letra C. O comando echo -e Boa \bProva exibe BoaProva, pois a opção -e habilita a interpretação de sequências de escape, e \b (backspace) apaga o caractere anterior, removendo o espaço entre "Boa" e "Prova". Essa é a função documentada do comando echo no shell Bash.

O comando echo é um utilitário do shell que imprime texto na saída padrão (terminal). Por padrão, ele exibe exatamente os argumentos recebidos, separados por espaços, e adiciona uma quebra de linha ao final. A opção -e (enable interpretation of backslash escapes) faz com que o echo interprete sequências de escape iniciadas por barra invertida (\), em vez de tratá-las como texto literal. Entre essas sequências, \b representa o caractere backspace (ASCII 8), que, quando processado, apaga o caractere imediatamente anterior na saída.

No comando do enunciado, echo -e Boa \bProva, o shell primeiro interpreta as aspas e as barras invertidas: \b é convertido para \b (uma barra invertida seguida de 'b'), que é passado como argumento ao echo. Com a opção -e, o echo interpreta \b como backspace. Assim, ao processar a string "Boa \bProva", o backspace apaga o espaço que estava entre "Boa" e "Prova", resultando em "BoaProva".

Vamos simular a execução passo a passo:

  1. O shell recebe o comando echo -e Boa \bProva.

  2. O shell interpreta as aspas e as barras invertidas: \b vira \b (uma barra invertida literal seguida de 'b').

  3. O echo é executado com a opção -e e os argumentos Boa, \b, Prova.

  4. O echo processa os argumentos: imprime "Boa", depois encontra \b e aplica backspace (apaga o espaço que seria impresso entre os argumentos), depois imprime "Prova".

  5. O resultado final é "BoaProva".

É importante notar que o backspace apaga o caractere anterior na saída, mas não remove o espaço que o shell insere entre argumentos — na verdade, o espaço é impresso e depois apagado pelo backspace. O efeito visual é que as palavras ficam coladas.

A pegadinha desta questão está em confundir o efeito de \b com outras sequências de escape, como \t (tabulação) ou \n (nova linha), ou em não saber que a opção -e é necessária para que a interpretação ocorra. Sem -e, o echo exibiria literalmente "Boa \bProva".

NÃO CAIA NESSA!

A banca explora a confusão entre \b (backspace) e outras sequências de escape. Muitos candidatos pensam que \b insere um espaço ou que a opção -e não altera o resultado. Lembre-se: \b apaga o caractere anterior, e -e é o que ativa essa interpretação. Com treino, você reconhece essas armadilhas de longe 💪.

  1. 1echo -e Boa \bProva
  2. 2Shell converte \b em \b
  3. 3echo imprime "Boa "
  4. 4\b apaga o espaço
  5. 5Imprime "Prova"
  6. 6Resultado: BoaProva
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

BOA PROVA — Esta alternativa sugere que o comando converte tudo para maiúsculas, o que não ocorre. O echo não altera a caixa das letras; ele apenas imprime o texto como está. Além disso, o espaço entre as palavras seria mantido, não removido.

Alternativa B — ❌ Incorreta

Boa PROVA — Esta alternativa mantém o espaço e altera a caixa de "Prova" para maiúsculas. Nenhuma dessas transformações é realizada pelo comando. O echo não modifica maiúsculas/minúsculas, e o espaço é apagado pelo backspace.

Alternativa C — ✅ Correta ⟵ GABARITO

BoaProva — Esta é a saída correta. O \b (backspace) apaga o espaço entre "Boa" e "Prova", unindo as palavras. A opção -e é essencial para que o echo interprete a sequência de escape. Sem ela, o texto seria exibido literalmente como "Boa \bProva".

Alternativa D — ❌ Incorreta

Boa pROVA — Esta alternativa sugere que apenas a primeira letra de "Prova" é maiúscula e o restante minúsculo, o que não corresponde ao comando. O echo não altera a capitalização das palavras; ele apenas imprime o texto fornecido, com o espaço removido pelo backspace.

Alternativa E — ❌ Incorreta

Boa Prova — Esta alternativa sugere que o comando insere múltiplos espaços entre as palavras. Na verdade, o echo insere um único espaço entre argumentos, e o \b remove esse espaço, resultando em "BoaProva". Não há inserção de espaços adicionais.

Gabarito: letra C — O comando echo -e Boa \bProva exibe "BoaProva" porque \b (backspace) apaga o espaço entre as palavras, e a opção -e habilita a interpretação dessa sequência de escape.

Link permanente: /questoes/vu197483