Je commence dans un répertoire vide.
$ touch aFile
$ ls
aFile
Ensuite, j'ai lsdeux arguments, dont l'un n'est pas dans ce répertoire. Je redirige les deux flux de sortie vers un fichier nommé output. J'utilise >>afin d'éviter d'écrire simultanément.
$ ls aFile not_exist >>output 2>>output
$ cat output
ls: cannot access 'not_exist': No such file or directory
aFile
Ce qui semble fonctionner. Y a-t-il des dangers à cette approche?
ls aFile not_exist &>>outputici? (Remarque, je suppose que vous utilisez bash .)
&>>n'est PAS standard. C'est une syntaxe obsolète et ambiguë qui fonctionne différemment dans différents shells. Je me demande d'où vous tirez vos affaires.
ls &>>foo ...doit être analysé comme deux commandes ls &et >>foo ..., et c'est ainsi que d'autres shells comme /bin/shUbuntu le analysent. Pour qu'il soit obsolète, vous pouvez regarder ici - bien que je ne prétende pas que ce soit une sorte d'autorité. bashCependant, vous pouvez demander aux responsables s'ils considèrent que c'est une bonne idée.