O que é & em um script de shell [duplicado]

13

Em um script que eu herdei, a saída de um de nossos programas é colocada em um arquivo com:

program &>> result.txt

Eu tenho lido em meu livro "Aprendendo o bash shell" em casa no fim de semana, mas não consigo encontrar o que isso significa (eu sei o que > e >> significam).

Estou sentindo falta de algo óbvio?

    
por user93236 29.11.2014 / 16:58

2 respostas

13

Seu livro provavelmente é muito antigo, isso é algo novo na versão 4 do Bash.

program &>> result.txt

é equivalente a

program >> result.txt 2>&1

Redirecione e acrescente stdout e stderr ao arquivo result.txt . Mais sobre o redirecionamento de E / S aqui .

    
por 29.11.2014 / 17:02
3

& significa a saída padrão ( 1> ) e o erro padrão ( 2> ).

>> significa anexar ao final do arquivo.

Você pode usar 1>>a 2>&1 em vez de &>>

date test >>file 2>&1

    
por 29.11.2014 / 17:02

Tags