ファイルにデータが追加され、その値が 200 MB を超えると新しいファイルが作成されます。

ファイルにデータが追加され、その値が 200 MB を超えると新しいファイルが作成されます。

5 分ごとに実行され、出力がファイルに追加されるスクリプトを作成しましたps -ef。現在のファイル サイズが 200 MB を超えたら、新しいファイルを作成したいと考えています。誰かこれを手伝ってくれませんか?

答え1

ファイルを追加する前に、次のようなコードをスクリプトに追加できます。

FILE="your-file"
if test $(( $(stat  -c"%s" "$FILE") )) -ge "$(( 200*1024*1024 ))"; then
    mv "$FILE" "$FILE-$(date +"%FT%T")"
fi

答え2

プログラムを確認してください。まず、次のような内容のlogrotate設定ファイルを作成します。(出力を にダンプすると仮定します)/home/john/logrotate/ps.confps/home/john/logrotate/log/ps.log

/home/john/logrotate/log/ps.log {
    size = 200MB
    missingok
    notifempty
}

次に、実行するためのcrontabを作成します/usr/bin/logrotate /home/john/logrotate/ps.conf圧縮などのその他のオプションについては、こちらを参照してください。

関連情報