Что такое & >> в сценарии оболочки

В сценарии, который я унаследовал, вывод одной из наших программ помещается в файл с:

program &>> result.txt 

Я читал в своей книге «Изучение оболочки bash» дома в выходные, но не могу найти, что это значит (я знаю, что означает > и >> означает).

Мне не хватает чего-то очевидного?

  • Bash - Как сделать каждый выбор меню в 1 строке вместо нескольких выборов в 1 строке
  • Bash цитирует расширение
  • Пример для $ "..."
  • Как переместить файлы в подкаталоги по счету?
  • Параметры dd-стиля для сценария bash
  • Получить свободное пространство в текущем каталоге в Bash
  • Являются ли «расширение имени файла» и «расширение имени пути» тем же самым в Bash?
  • bash_completion
  • 2 Solutions collect form web for “Что такое & >> в сценарии оболочки”

    Ваша книга, вероятно, слишком стар, это что-то новое в Bash версии 4.

     program &>> result.txt 

    эквивалентно

     program >> result.txt 2>&1 

    Переназначьте и добавьте stdout и stderr в файл result.txt . Подробнее о перенаправлении ввода-вывода здесь .

    & означает как стандартный вывод ( 1> ), так и стандартную ошибку ( 2> ).

    >> означает добавление к концу файла.

    Вы можете использовать 1>>a 2>&1 вместо &>>

    Например. date test >>file 2>&1

    Linux и Unix - лучшая ОС в мире.