Ich beginne in einem leeren Verzeichnis.
$ touch aFile
$ ls
aFile
Dann habe ich ls
zwei Argumente, von denen sich eines nicht in diesem Verzeichnis befindet. Ich leite beide Ausgabestreams in eine Datei namens um output
. Ich benutze >>
, um nicht gleichzeitig zu schreiben.
$ ls aFile not_exist >>output 2>>output
$ cat output
ls: cannot access 'not_exist': No such file or directory
aFile
Welches scheint zu funktionieren. Gibt es Gefahren für diesen Ansatz?
ls aFile not_exist &>>output
hier nicht den Standard ? (Beachten Sie, ich
&>>
ist NICHT Standard. Es ist eine DEPRECATED, mehrdeutige Syntax, die in verschiedenen Shells unterschiedlich funktioniert. Ich frage mich, woher ihr eure Sachen bekommt.
ls &>>foo ...
als zwei Comands analysiert werden soll ls &
und >>foo ...
, und dies ist die Art und Weise andere Shells wie der /bin/sh
von Ubuntu es parsen. Wenn es veraltet ist, können Sie hier nachsehen - obwohl ich nicht vorgebe, dass das irgendeine Art von Autorität ist. Sie können die bash
Betreuer jedoch fragen , ob sie dies für eine gute Idee halten.