Shell Script<br />Carlos Melo<br />Sistemas Operacionais<br />
Direcionadores<br />		Direcionadores de fluxo fazem o que o nome sugere: direcionam o fluxo da saída dos programas, envian...
Direcionadores<br />2>> (dois-maior-maior): Direciona as saídas de erro geradas pelo programa para um arquivo, adicionando...
O direcionador ><br />O direcionador > direciona a saída padrão de um comando para um arquivo. Caso o arquivo exista, o se...
O direcionador 2><br />		Uma restrição ao uso do direcionador > é que ele não funciona para mensagens de erro. Por exemplo...
O direcionador <<br />		Uma função muito útil dos direcionadores é utilizar o conteúdo de arquivos como parâmetros de coma...
O direcionador <<<br />		Temos ainda o direcionador <<, utilizado para marcar o fim de exibição de um bloco. Um dos usos m...
Exemplo:<br />Poderiámos usar isso para inserir texto em um arquivo sem precisar usar nenhum editor de texto. Vamos inseri...
O direcionador |<br />		Por fim, temos o último direcionador, o |, também conhecido como pipe (duto, cano), utilizado para...
Fim<br />Dúvidas?<br />
Próximos SlideShares
Carregando em…5
×

Shell script ii direcionadores

791 visualizações

Publicada em

Publicada em: Tecnologia, Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
791
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
12
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Shell script ii direcionadores

  1. 1. Shell Script<br />Carlos Melo<br />Sistemas Operacionais<br />
  2. 2. Direcionadores<br /> Direcionadores de fluxo fazem o que o nome sugere: direcionam o fluxo da saída dos programas, enviando-as para locais diferentes da saída padrão. Esses locais podem ser arquivos, dispositivos, processos e outros programas. O direcionadores utilizados no GNU/Linux são: > (maior): Direciona a saída do comando para um arquivo, substituindo o seu conteúdo, caso o arquivo já exista; <br />>> (maior-maior): Direciona a saída do comando para um arquivo, adicionando o texto ao final do arquivo, caso ele já exista; <br />< (menor): Passa o conteúdo do arquivo como argumento para o comando; <br />2> (dois-maior): Direciona as saídas de erro geradas pelo programa para um arquivo, substituindo seu conteúdo, caso o arquivo já exista; <br />
  3. 3. Direcionadores<br />2>> (dois-maior-maior): Direciona as saídas de erro geradas pelo programa para um arquivo, adicionando o texto ao final do arquivo, caso ele já exista; <br />&> (e-maior): Direciona todas as saídas (normal e de erro) para um arquivo, substituindo seu conteúdo, caso ele já exista; <br />&>> (e-maior-maior): Direciona todas as saídas (normal e de erro) para um arquivo, adicionando o texto ao final do arquivo, caso ele já exista; <br />| (barra vertical ou pipe): Utiliza a saída do primeiro comando como argumento do segundo comando. <br />
  4. 4. O direcionador ><br />O direcionador > direciona a saída padrão de um comando para um arquivo. Caso o arquivo exista, o seu conteúdo é substituído. <br />$ ps aux > processos.listAgora, nada é impresso no terminal. Por que? Porque a saída foi direcionada para o arquivo processos.list. Verifique o conteúdo do arquivo.<br />
  5. 5. O direcionador 2><br /> Uma restrição ao uso do direcionador > é que ele não funciona para mensagens de erro. Por exemplo, vamos usar o comando ps aux usando como parâmetro um processo inexistente.$ ls diretorio_inexistente > diretorios.listObserve que, mesmo usando o direcionador >, a mensagem de erro foi exibida. Se visualizarmos o conteúdo do arquivo ls_out veremos que nada foi gravado. Para gravar as mensagens de erro, devemos usar o direcionador 2>: $ ls diretorio_inexistente 2> diretorios.listAgora sim, nenhuma mensagem de erro foi exibida na tela, porque ela foi enviada para o arquivo diretorios.list, verifique o resultado.<br />
  6. 6. O direcionador <<br /> Uma função muito útil dos direcionadores é utilizar o conteúdo de arquivos como parâmetros de comandos. Para isso utilizamos o direcionador <. Como exemplo, vamos criar um lista de programas que devem ser executados em seqüência, no arquivo lista.exec, da seguinte forma: <br />$ cat lista.execlscat arquivo_inexistente Agora, utilizamos o comando exec para executar os comandos listados no arquivo lista.exec, da seguinte forma: <br />$ exec < lista.exec<br />
  7. 7. O direcionador <<<br /> Temos ainda o direcionador <<, utilizado para marcar o fim de exibição de um bloco. Um dos usos mais freqüentes desse direcionador é em conjunto com o comando cat. O comando abaixo termina o comando cat quando for digitada a palavra "fim": $ cat << fim> O comando só termina> quando for digitada> a palavra especificada> depois do direcionador> <<, nesse caso, a palavra> é "fim"> fim<br />
  8. 8. Exemplo:<br />Poderiámos usar isso para inserir texto em um arquivo sem precisar usar nenhum editor de texto. Vamos inserir, por exemplo, uma linha ao final do arquivo /etc/fstab: $ cat << FIM >> /etc/fstab> /dev/sda /mnt/usbvfatrw,user,noauto,sync 0 0> FIM<br />
  9. 9. O direcionador |<br /> Por fim, temos o último direcionador, o |, também conhecido como pipe (duto, cano), utilizado para direcionar a saída de um comando para outro comando, e é utilizado todo o tempo para a realização de todo tipo de tarefas e procedimentos. Um dos usos mais comuns do | é com os comandos ls e more (ou less), para ver o conteúdo de um diretório, quando este não cabe na tela, como o diretório /etc, por exemplo. Para que possamos ver todos os arquivos, direcionamos a saída do ls para o more, que faz a paginação do conteúdo: $ ls /etc | more<br />
  10. 10. Fim<br />Dúvidas?<br />

×