Carpe Diem

備忘録。https://github.com/jun06t

ログファイルの削除

ログファイルの削除方法です。truncateするやり方です。

Q. なぜ truncate ?

A. 普通の削除だとプロセスを停止しなくてはいけない。けれどサービスは停止したくないからオンラインでできるやり方が必要。それが truncate

 

使いやすい順で記述します。

◆方法1

$ : > xxx.log

: という区切りのコマンドがあり、それを file にリダイレクトしてあげるとファイルが空になります。

 

◆方法2

$ echo -n > xxx.log

-n オプションで改行なしにするところがポイントです。

 

◆方法3

$ cp /dev/null xxx.log

/dev/null という擬似デバイスを利用して file を空にします。

 

◆方法4

$ > xxx.log

単なるリダイレクトです。 zshの場合その後 ctrl-D や ctrl-C などで抜ける必要があります。

 

◆方法5

$ cat > xxx.log

cat で何も引数を指定しないことで上書きします。 bashzshも後で ctrl-D や ctrl-C などで抜ける必要があります。

 

ソース:

プロセスを再起動せずにログを削除するにはtruncate

Linuxでファイルを空にする5つの方法