Analise as afirmativas sobre redirecionamento no sistema op...

Próximas questões
Com base no mesmo assunto
Q947285 Sistemas Operacionais

Analise as afirmativas sobre redirecionamento no sistema operacional Linux, colocando entre parênteses a letra “V”, quando se tratar de afirmativa verdadeira, e a letra “F” quando se tratar de afirmativa falsa. A seguir, assinale a alternativa que apresenta a sequência correta.

( ) O ‘>’ redireciona o resultado de algum comando para um arquivo, manipulando tanto mensagens de operações bem sucedidas quanto mensagens de erro.

( ) O ‘ 1 >> ’ redireciona o resultado de algum comando para o final de um arquivo, sem apagar o conteúdo anterior, manipulando tanto mensagens de operações bem sucedidas quanto mensagens de erro.

( ) O ‘2>> ’ redireciona o resultado apenas das mensagens de erro de algum comando para o final de um arquivo, sem apagar o conteúdo anterior.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - F - F - V.

Vamos analisar as afirmativas para entender por que a alternativa D é a correta.

Afirmativa 1: "O ‘>’ redireciona o resultado de algum comando para um arquivo, manipulando tanto mensagens de operações bem-sucedidas quanto mensagens de erro."

Essa afirmativa é falsa. No Linux, o operador > é utilizado para redirecionar apenas a saída padrão (stdout) de um comando para um arquivo, e não redireciona as mensagens de erro (stderr). Para redirecionar ambos, seria necessário utilizar 2>&1 em combinação com >.

Afirmativa 2: "O ‘1 >>’ redireciona o resultado de algum comando para o final de um arquivo, sem apagar o conteúdo anterior, manipulando tanto mensagens de operações bem-sucedidas quanto mensagens de erro."

Essa afirmativa também é falsa. O operador >> é de fato usado para redirecionar a saída padrão (stdout) para o final de um arquivo, preservando o conteúdo pré-existente, mas não redireciona mensagens de erro. O 1>> explicitamente refere-se à saída padrão, enquanto as mensagens de erro (stderr) requerem o uso de 2>>.

Afirmativa 3: "O ‘2>> ’ redireciona o resultado apenas das mensagens de erro de algum comando para o final de um arquivo, sem apagar o conteúdo anterior."

Aqui temos uma afirmativa verdadeira. O operador 2>> é utilizado para redirecionar apenas a saída de erro padrão (stderr) para o final de um arquivo, preservando o conteúdo anterior, o que é exatamente o que a afirmativa descreve.

Essa questão exige do candidato um entendimento claro dos conceitos de redirecionamento de saída no Linux, um conhecimento fundamental para a administração de sistemas. Compreender a diferença entre stdout (saída padrão) e stderr (saída de erro) é crucial para manipular corretamente os logs e saídas dos comandos.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

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

Comentários

Veja os comentários dos nossos alunos

GABARITO D

(F) O ‘>’ redireciona o resultado de algum comando para um arquivo, manipulando tanto mensagens de operações bem sucedidas quanto mensagens de erro. (Somente mensagens bem sucessidas, quando temos o caractere ">" sozinho com o número do descritor ausente, é considerado a saída padrão, ou seja, STDOUT que tem como descritor o número "1")

(F) O ‘ 1 >> ’ redireciona o resultado de algum comando para o final de um arquivo, sem apagar o conteúdo anterior, manipulando tanto mensagens de operações bem sucedidas quanto mensagens de erro. (Somente para mensagens bem sucedidas)

(V) O ‘2>> ’ redireciona o resultado apenas das mensagens de erro de algum comando para o final de um arquivo, sem apagar o conteúdo anterior.

Foco na missão, eu vou ser QCO !

Entrada e Saída de Shell:

 

0 - Entrada - padrão ---------------------> stdin     <         Teclado 

1 - Saída - padrão ------------------------> stdout   >         Vídeo

2 - Saída - padrão de erros ------------> stderr     2>        Vídeo

 

>> - Concatena a saída padrão

Vamos aos comentários.

(F) O ‘>’ redireciona o resultado de algum comando para um arquivo, manipulando tanto mensagens de operações bem sucedidas quanto mensagens de erro.

Explicação: ">" serve para enviarmos a saída do comando para um outro arquivo.

"2>" serve para redireciona os erros gerados pelo comando para um arquivo especificado e mesmo que não ocorram erros no comando, o arquivo é criado. Por exemplo, $ ls arquivoquenaoexiste 2> erros esse comando vai gerar um erro, pois não existe o arquivo especificado, este será enviado para o arquivo erros, se este arquivo não existir o arquivo será criado, mesmo que não haja erros.

(F) O ‘ 1 >> ’ redireciona o resultado de algum comando para o final de um arquivo, sem apagar o conteúdo anterior, manipulando tanto mensagens de operações bem sucedidas quanto mensagens de erro.

Explicação: O certo é usar o comando ">>", exemplo, $ ls >> arquivosdodiretorio esse comando serve para listar os arquivos e pastas do diretório, será direcionada para o arquivo arquivosdodiretorio, e se este arquivo já existir, a saída do comando será adicionada ao fim do arquivo. 

(V) O ‘2>> ’ redireciona o resultado apenas das mensagens de erro de algum comando para o final de um arquivo, sem apagar o conteúdo anterior.

Para mais consultas acessar o site VivaLinux: "https://www.vivaolinux.com.br/dica/Redirecionamento-no-Shell"

#SóNinja

#CursoAdonai

O redirecionamento no Linux é feito pelos operadores >, >>, <, 2>, 2>> e |.

(1) > é usado para sobrescrever um arquivo com a saída do comando.

Exemplo: comando > arquivo.

(2) >> seria a mesma coisa que o >, mas com uma diferença, não sobrescreve o arquivo, podendo escrever mais.

Exemplo: comando >> arquivo.

(3) < ao invés de mandar a saída do comando para o arquivo, ele manda os valores do arquivo como entrada do comando.

Exemplo: comando < arquivo.

(4) << é utilizado para enviar múltiplas linhas de um arquivo(here_document) para a entrada de um comando até encontrar um delimitador, normalmente sendo uma string 'EOF' por convenção.

here_document é um tipo de "documento" escrito em tempo real no terminal Linux.

Exemplo: comando << EOF > arquivo

(5) <<< é utilizado para enviar uma string(here_string) diretamente para o comando ao invés de valores em um arquivo.

here_string é uma string simples escrita em tempo real no terminal Linux.

Exemplo: comando <<< "string" > arquivo

(6) O 2> redireciona somente as mensagens de erro para um arquivo, sobrescrevendo.

Exemplo: comando 2> arquivo.

(7) O 2>> seria a mesma coisa que o 2>, mas não sobrescreve, que enviado erros do comando.

Exemplo: comando 2>> arquivo.

(8) O | pipe faz é redirecionar a saída de comando1 para entrada de comando2.

Comandos que trabalham muito bem com o pipe:

- echo;

- cat;

- less;

- more;

- sed;

- awk.

Exemplo: comando1 | comando2.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo