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

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

program &>> result.txt 

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

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

  • Запустить тест, прочитанный в bash
  • Что говорят `declare name` и` declare -g`?
  • Bash - Если путаница синтаксиса
  • Как назвать файл на самом глубоком уровне дерева каталогов
  • dirname недействительный параметр `b`
  • Отображение секунд как дней / часов / мин / сек?
  • Скрипт для открытия emacs двумя разными способами
  • Почему значение BASH_SUBSHELL не изменяется при изменении значения SHLVL?
  • 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 - лучшая ОС в мире.