Удалить все содержимое файла (очистить файл) в Unix/Linux
Хочу описать в своей статье «Удалить все содержимое файла в Unix/Linux» как можно очистить содержимое файла. Некоторые скажут что это банально, взял удалил файл и создал заново, делов то. Но иногда это не проще и не выход.
Тем более для общего развития, та кому то и пригодиться. Я вот, например, не все методы знал.
1. Если вы хотите очистить содержимое файла вы можете просто удалить файл и создать его заново:
$ rm -rf /home/captain/file_for_delete.txt
2. Существуют и другие методы очистки файла, например методом «echo».
Чтобы очистить свой файл, просто введите следующую команду. Я использую свой php_error.log файл, например.
# echo -n > /home/captain/some_file_for_clear.txt
3. Можно удалить содержимое файла с помощью редакторов, например VI/VIM. Открываем файл, я открою его vim:
# vim /home/captain/some_file_for_clear.txt
Когда открылся редактор, нажимаем «dG» и чтобы сохранить, используем сначала «:» и наживаем «wq» после чего нажимаем энтер.
PS: Команды нужно использовать без кавычек.
4. Используем null для очистки файла:
# cat /dev/null > /home/captain/file_clean.sh
или
# cp /dev/null > /home/captain/file_clean.sh
5. Еще 1 интересная команда для очистки файла:
# :> /home/captain/file_clean.sh
или
# > /home/captain/file_clean.sh
6. С помощью текстового редактора SED:
# sed -i 'd' file_clean.sh
Тема «Удалить все содержимое файла (очистить файл) в Unix/Linux» завершена.
truncate -s 0 filename
Главное не удалить сбис!