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

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

program &>> result.txt 

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

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

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

  • Странное поведение в $ (dirname `readlink -f $ 0`)
  • Используйте цикл, чтобы найти количество файлов в вашем текущем каталоге
  • Передача потока в функцию bash
  • Имитировать ввод клавиатуры в bash OR stdin redirection, где stdin остается видимым
  • Можно ли запустить fc, не показывая мои введенные команды?
  • Как я могу скрыть вывод командной строки в окне терминала?
  • Как использовать две переменные в одном цикле
  • Функции листинга, определенные в сценарии «sourced»?
  • Как вставить «string + имя файла» в текст файла в командной строке bash командной строки?
  • Запуск события, основанного на выводе второй команды
  • Тест регулярного выражения Bash не работает
  • Linux и Unix - лучшая ОС в мире.