Pular para o conteúdo principal

Questão de Noções de Informática — Linux / Unix — CESPE / CEBRASPE 2024

Noções de InformáticaLinux / Unix
Código
ce401302
Banca
CESPE / CEBRASPE
Órgão
ANAC
Ano
2024
Cargo
ERAC ( )

Julgue o próximo item, relativo a Linux, MS Excel, firewalls e Google Chrome.

 

Considere que os comandos a seguir tenham sido executados em um terminal do sistema operacional Linux, um após o outro.


comando 1: echo “ANAC” >> a.txt
comando 2: echo “Agencia” >> a.txt
comando 3: cp a.txt b.txt
comando 4: echo “Nacional” >> b.txt
comando 5: diff a.txt b.txt


Com base nessas informações, é correto afirmar que o resultado da execução do comando 5 será o seguinte.
> ANAC
> Agencia

  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

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”.

Comandos de comparação de arquivos no Linux: diff

Gabarito: letra E (ERRADO). O comando diff compara dois arquivos linha a linha e exibe as diferenças entre eles; como o arquivo b.txt contém uma linha a mais que a.txt (a linha "Nacional"), a saída do comando 5 não será apenas "ANAC" e "Agencia", mas sim uma indicação das linhas que diferem, incluindo a linha adicionada. A afirmação do item está incorreta.

O comando diff é uma ferramenta fundamental do Linux para comparar arquivos de texto. Ele analisa dois arquivos e mostra, em sua saída padrão, as linhas que precisam ser alteradas para que o primeiro arquivo se torne idêntico ao segundo. A saída típica do diff usa códigos como < (linha presente apenas no primeiro arquivo) e > (linha presente apenas no segundo arquivo), além de indicadores de intervalo como 1,2c1,3 para mostrar quais linhas de cada arquivo estão envolvidas na diferença.

Vamos simular a execução dos comandos para entender o que acontece:

  1. echo "ANAC" >> a.txt — cria o arquivo a.txt (ou adiciona ao final) com a linha "ANAC".

  2. echo "Agencia" >> a.txt — adiciona a linha "Agencia" ao final de a.txt. Agora a.txt contém:

    ```

    ANAC

    Agencia

    ```

  3. cp a.txt b.txt — copia o conteúdo de a.txt para b.txt. Agora b.txt é idêntico a a.txt.

  4. echo "Nacional" >> b.txt — adiciona a linha "Nacional" ao final de b.txt. Agora b.txt contém:

    ```

    ANAC

    Agencia

    Nacional

    ```

  5. diff a.txt b.txt — compara os dois arquivos. A saída será algo como:

    ```

    2a3

    > Nacional

    ```

    Isso indica que, após a linha 2 de a.txt, deve ser adicionada a linha 3 de b.txt, que é "Nacional".

Portanto, a saída do diff não é simplesmente "ANAC" e "Agencia" como afirma o item. O item está errado.

A pegadinha aqui é que muitos candidatos confundem o diff com o cat (que exibe o conteúdo do arquivo) ou pensam que o diff mostra apenas as linhas comuns. Na verdade, o diff mostra as diferenças, e como b.txt tem uma linha a mais, essa diferença é exibida com o marcador >.

  1. 1echo >> a.txt (ANAC)
  2. 2echo >> a.txt (Agencia)
  3. 3cp a.txt b.txt
  4. 4echo >> b.txt (Nacional)
  5. 5diff a.txt b.txt
LEVEL · soulevel.com.br
NÃO CAIA NESSA!

A banca tenta induzir o candidato a acreditar que o diff exibe o conteúdo dos arquivos ou apenas as linhas que são iguais. Na verdade, o diff mostra as diferenças entre os arquivos, e a saída inclui a linha adicionada em b.txt com o sinal >. Fique atento: diff não é cat!

PEGA ESSA DICA!

Para resolver questões com diff, simule mentalmente o conteúdo de cada arquivo após cada comando. Lembre-se de que >> adiciona ao final, cp copia o conteúdo, e diff compara e mostra as diferenças. Se os arquivos forem idênticos, o diff não produz saída; se houver diferença, ele mostra as linhas que mudaram.

Gabarito: letra E (ERRADO).

Link permanente: /questoes/ce401302