Я починаю з порожнього каталогу.
$ touch aFile
$ ls
aFile
Тоді я ls
два аргументи, жодного з яких немає в цьому каталозі. Я перенаправляю обидва вихідні потоки у файл з назвою output
. Я використовую >>
, щоб не писати одночасно.
$ ls aFile not_exist >>output 2>>output
$ cat output
ls: cannot access 'not_exist': No such file or directory
aFile
Який, здається, працює. Чи є небезпека такого підходу?
ls aFile not_exist &>>output
? (Зверніть увагу, я припускаю, що ви використовуєте bash .)
&>>
НЕ стандартний. Це ОБЛАДНАНИЙ, неоднозначний синтаксис, який по-різному працює в різних оболонках. Цікаво, звідки ви, хлопці, берете свої речі.
ls &>>foo ...
повинні бути розібрані як два comands ls &
і >>foo ...
, і це шлях , інші оболонки на кшталт /bin/sh
з Ubuntu розбирає його. Оскільки це застаріло, ви можете подивитися тут - хоча я не претендую на те, що це якась влада. Ви можете запитати у bash
технічних працівників, якщо вони вважають, що це корисна ідея.