2
13 - COMANDOS DE REDIRECIONAMENTO E PIPE ---------------------------------------- Tente ao invés de somente ">" use "2> /arquivo". Normalmente o ">" somente pega a saida de comandos executados com sucesso em quanto o "2>" eh a saida de erro padrão. 13.1 - ">" = redireciona a saída de um programa/comando/script para algum dispositivo ou arquivo ao invés do dispositivo de saída padrão(monitor de video). Quando é usado com arquivos este redirecionamento cria ou substitui o conteúdo do arquivo EX: você pode usar o comando "ls" para listar arquivos e usar ls > listagem.txt para enviar a saída do comando para o arquivo listagem.txt O mesmo comando pode ser redirecionado para o segundo console "/dev/tty2" usando: ls > /dev/tty2 o resultado do comando "ls" será exibido no segundo console 13.2 - ">>" = redireciona a saída de um programa/comando/script para algum dispositivo ou final de arquivo ao invés do dispositivo de saída padrão (monitor de video). A diferença entre este redirecionamento duplo e o simples, é se caso for usado com arquivos, adiciona a saída do comando ao final do arquivo existente ao invés de substituir seu conteúdo. EX: você pode acrescentar a saída do comando "ls" ao arquivo listagem.txt do capítulo anterior usando: ls / >> listagem.txt O mesmo comando pode ser redirecionado para o segundo console "/dev/tty2" usando: ls > /dev/tty2 o resultado do comando "ls" será exibido no segundo console 13.3 - "<" = direciona a entrada padrão de arquivo/dispositivo para um comando. Este comando faz o contrário do anterior ele envia dados ao comando. Você pode usar o comando cat < file4.txt para enviar o conteúdo do arquivo "file4.txt" ao comando "cat" que mostrará seu conteúdo 13.4 - "2>" = redireciona a saida de erro padrao /usr/programa1.sh 2> /home/arquivos/erros.txt = envia a saida de erro padrao do comando programa1.sh para o arquivo erros.txt 13.5 - "&>" = envia a saida padrao e tambem o erro padrao para um determinado arquivo 13.6 - "2>>" = o direcionamento não destrutivo dá um append(adicionamento) de sua saída de erro no arquivo erros.txt - script 2>> erros.txt 13.7 - "|" (pipe) = envia a saída de um comando para a entrada do próximo comando para continuidade do processamento. Os dados enviados são processados pelo próximo comando que mostrará o resultado do processamento.

13 - COMANDOS DE REDIRECIONAMENTO E PIPE.pdf

Embed Size (px)

Citation preview

Page 1: 13 - COMANDOS DE REDIRECIONAMENTO E PIPE.pdf

13 - COMANDOS DE REDIRECIONAMENTO E PIPE----------------------------------------Tente ao invés de somente ">" use "2> /arquivo". Normalmente o ">"somente pega a saida de comandos executados com sucesso em quantoo "2>" eh a saida de erro padrão.

13.1 - ">" = redireciona a saída de um programa/comando/script para algumdispositivo ou arquivo ao invés do dispositivo de saída padrão(monitor devideo). Quando é usado com arquivos este redirecionamento cria ou substituio conteúdo do arquivo

EX: você pode usar o comando "ls" para listar arquivos e usar ls > listagem.txtpara enviar a saída do comando para o arquivo listagem.txt

O mesmo comando pode ser redirecionado para o segundo console "/dev/tty2"usando: ls > /dev/tty2o resultado do comando "ls" será exibido no segundo console

13.2 - ">>" = redireciona a saída de um programa/comando/script para algumdispositivo ou final de arquivo ao invés do dispositivo de saída padrão(monitor de video). A diferença entre este redirecionamento duplo e osimples, é se caso for usado com arquivos, adiciona a saída do comandoao final do arquivo existente ao invés de substituir seu conteúdo.

EX: você pode acrescentar a saída do comando "ls" ao arquivo listagem.txtdo capítulo anterior usando: ls / >> listagem.txt

O mesmo comando pode ser redirecionado para o segundo console "/dev/tty2"usando: ls > /dev/tty2o resultado do comando "ls" será exibido no segundo console

13.3 - "<" = direciona a entrada padrão de arquivo/dispositivo para umcomando. Este comando faz o contrário do anterior ele envia dados ao comando.Você pode usar o comando cat < file4.txtpara enviar o conteúdo do arquivo "file4.txt" ao comando "cat" que mostraráseu conteúdo

13.4 - "2>" = redireciona a saida de erro padrao /usr/programa1.sh 2> /home/arquivos/erros.txt = envia a saida de erro padraodo comando programa1.sh para o arquivo erros.txt

13.5 - "&>" = envia a saida padrao e tambem o erro padrao para umdeterminado arquivo

13.6 - "2>>" = o direcionamento não destrutivo dá um append(adicionamento)de sua saída de erro no arquivo erros.txt - script 2>> erros.txt

13.7 - "|" (pipe) = envia a saída de um comando para a entrada do próximocomando para continuidade do processamento. Os dados enviados são processadospelo próximo comando que mostrará o resultado do processamento.

Page 2: 13 - COMANDOS DE REDIRECIONAMENTO E PIPE.pdf

EX: ls -la | more = este comando faz a listagem longa de arquivos que é enviadoao comando `more' (que tem a função de efetuar uma pausa a cada 25 linhasdo arquivo).

A principal diferença entre o "|" e o ">", é que o Pipe envolve processamentoentre comandos, a saída de um comando é enviado a entrada do próximo e o">" redireciona a saída de um comando para um arquivo/dispositivo.

Você pode notar pelo exemplo acima "ls -la | more" que ambos "ls" e "more"são comandos porque estão separados por um "|" Se um deles não existir ouestiver digitado incorretamente, será mostrada uma mensagem de erro.

Um resultado diferente seria obtido usando um ">" no lugar do "|" A saídado comando "ls -la" seria gravada em um arquivo chamado "more".