Ola

Isso é uma questão de procedencia

$ mkdir shell ; cd shell ; ls

$ touch existo

$ ls nao-existo 2>&1 existo > xxx
ls: nao-existo: No such file or directory

$ ls nao-existo existo > yyy 2>&1

$ cat xxx
existo

$ cat yyy
ls: nao-existo: No such file or directory
existo

quando vc faz 2>&1 vc diz "conecte a saida de erro à saida padrão". O
que era a saida padrão naquele momento? era o terminal! DEPOIS vc diz
'saida padrão é arquivo xxx', mas o redirecionamento antigo continua
para o monitor.

quando fazemos > yyy vc redireciona a sauda padrão para o arquivo yyy
, depois conectamos a saida de erro à saida padrão - que no caso sera
o arquivo yyy agora.

Tive q recorrer a uma ajuda de instancia superiora para entender esta
questão... é intrigante. achava que acontecia algo como o parser do
shell ignorar tudo (tomando como referencia o comando ls) depois do
2>&1  como em

$ ls existo & nao-existo
[1] 3368
existo
bash: nao-existo: command not found
[1]+  Done                    ls existo

o & barra os parâmetros para o comando ls (tenta executar como um novo comando).

Agora é abusar desse conceito... :)

[]´s

Tiago
On 10/17/06, Eduardo Jaime Quiros Batres <[EMAIL PROTECTED]> wrote:
> Bom dia,
>
>         Alguém poderia me esclarecer qual a diferença entre fazer:
>
> "comando"  2>&1  >  "destino"
>
> ou
>
> "comando"  >  "destino"  2>&1
>
> testando vejo que o primeiro não funciona, pensei que fosse porque o "2>&1"
> era interpretado como parametro para "comando", mas testes não confirmaram
> isso.
>
> --
> Eduardo Jaime Quirós Batres ([EMAIL PROTECTED])
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>
>


-- 
Tiago B Peczenyj
Linux User #405772

# cd /pub
# more beer


---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 

Responder a