С Справочное руководство bash :
Опция noclobber
доступна, чтобы избежать перезаписи существующих файлов с перенаправлением вывода (см. Построение набора). Оператор перенаправления |> | ’может использоваться для переопределения noclobber.
Если вы делаете:
set -o noclobber
echo > file
Тогда, если файл file
существовал до выполнения, вторая команда потерпит неудачу. Вы можете переписать поведение с помощью >|
set -o noclobber
echo >| file
Даже если установлена опция noclobber
, file
, если он существовал, также будет перезаписан. Я редко вижу варианты >|
и noclobber
. Обычно люди [ -f file ]
проверяют файл на наличие.