Eu começo no diretório vazio.
$ touch aFile
$ ls
aFile
Então, eu tenho ls
dois argumentos, um dos quais não está neste diretório. Eu redireciono os dois fluxos de saída para um arquivo chamado output
. Eu uso >>
para evitar escrever simultaneamente.
$ ls aFile not_exist >>output 2>>output
$ cat output
ls: cannot access 'not_exist': No such file or directory
aFile
O que parece funcionar. Existem perigos para essa abordagem?
ls aFile not_exist &>>output
aqui? (Observe, eu estou supondo que você esteja usando o bash .)
&>>
NÃO é padrão. É uma sintaxe depreciada e ambígua que funciona de maneira diferente em diferentes tipos de conchas. Eu me pergunto de onde vocês tiram suas coisas.
ls &>>foo ...
sejam analisados como dois comandos ls &
e >>foo ...
, e é dessa maneira que outros shells como o /bin/sh
do Ubuntu o estão analisando. Por ter sido preterido, você pode olhar aqui - embora eu não finja que é algum tipo de autoridade. Você pode perguntar aos bash
mantenedores se eles consideram usar essa uma boa idéia.