У меня есть файл под названием error.log на моем сервере, который я должен часто усекать. У меня есть rw полномочия для файла. Открытие файла в vi> удаляющий все содержание> сохраняющие работы (очевидно). Но когда я пробую ниже
cat /dev/null > error.log
Я получаю сообщение
File already exists.
Очевидно, существует некоторая конфигурация, реализованная на сервере для предотвращения случайного переопределения файлов. Кто-либо может сказать, как я "усекаю" файл в единственной команде?
У вас установлена опция noclobber
. Ошибка выглядит так, как будто она из csh, поэтому вы должны сделать:
cat /dev/null >! file
Если я ошибаюсь и вы используете bash, вам следует сделать:
cat /dev/null >| file
в bash, вы также можете сократить это до:
>| file