В этой статье вы узнаете, как обрезать файл журнала и удалять его содержимое, не удаляя сам файл.

Вы окажетесь в ситуациях, когда вам нужно очистить файл. Это часто случается, когда у вас огромные файлы журналов, и как бы вы это сделали?

Один не очень чистый способ – удалить файл, а затем создать новый файл. Но это не очень хорошая идея. Это не будет тот же файл, временная метка (atime, mtime и т. д.). Будет отличаться вместе с другими правами доступа к файлам.

Вместо создания нового пустого файла вы можете удалить его содержимое. Итак, как вы очищаете файл в Linux? Как очистить файл от всего его содержимого без удаления самого файла?

 

4 способа очистить файл в Linux

Существует несколько способов очистки файла без его фактического удаления. Позвольте нам показать вам некоторые из этих методов.

 

Способ 1: усечь файл с помощью команды truncate

Самый безопасный способ обрезать файл журнала – использовать команду truncate.

truncate -s 0 filename

 

В приведенной выше команде -s используется для установки/настройки размера (в байтах) файла. Когда вы используете -s 0, это означает, что вы изменили размер файла до 0 байт.

 

Способ 2: Пустой файл, используя :> или >

Самый простой способ очистить файл – использовать команду ниже. Если файл не используется, он будет работать в Bash:

> filename

 

Хотя вышеперечисленное работает только в Bash Shell, вы можете использовать аналогичную команду для других оболочек:

:> filename

 

Вы также можете использовать эту команду для очистки файла:

true > filename

 

Способ 3: использование команды echo для очистки файла в Linux

Другой способ очистить файл – использовать команду echo в Linux:

echo > filename

 

Вы также можете использовать команду echo следующим образом:

echo "" > filename

 

Способ 4: используйте /dev/null, чтобы очистить файл

Вы также можете использовать знаменитую /dev/null и объединить ее с командой cat для очистки файла журнала:

cat /dev/null > file.log

 

В конце…

И если у вас недостаточно прав для какой-либо из вышеперечисленных команд, это верный выстрел, но немного грязный способ добиться этого:

touch newfile
mv newfile filename

 

Мы надеемся, что этот быстрый совет помог вам очистить файл в Linux. Добавьте нас в закладки для получения дополнительных советов по Linux.

Источник: AndreyEx.ru