Предположительно, причина, по которой эта проблема решается, заключается в том, что вы используете Mac OS X (или другой BSD).
Версия BSD sed
требует, чтобы аргумент -i
имел значение. Это значение должно быть расширением файла, которое sed
будет использовать для создания резервной копии, если во время обработки sed
произойдет ошибка, и файл необходимо будет откатить до его исходного содержимого. Значением также может быть пустая строка (''
), указывающая sed
, что файл резервной копии не следует создавать.
Версия GNU sed
умнее и знает, что, если значение не передается, резервное копирование создавать не следует. Это не нуждается в пустой строке.