Linux のタイムドログ削除を実装する簡単な方法

Linux のタイムドログ削除を実装する簡単な方法

導入

Linux は、ファイル、ログ、電子メール、バックアップなどを自動的に生成できるシステムです。ハードディスクは現在安価ですが、これらのファイルのためにハードディスクのスペースを無駄にしてしまう可能性があります。不要なファイルを定期的にシステムでクリーンアップするのは非常に便利です。

プロジェクトではさまざまなログが生成され、時間が経つにつれてログの数が増えていきます。一定時間より古いログは参照価値がなく、スペースを占有するため、ほとんどのプロジェクトではログが削除されます。この記事の要件は、7 日より古いログを削除することです。これは、ログを削除するコマンドと、スケジュールされたタスクを設定するという 2 つの手順に大別されます。

指定した時間のログを削除する

まず、7 日前のすべてのログを検索します。find を使用する場合は、-mtime パラメータを追加します。これは、24 時間単位で指定された時間内に変更されたファイルまたはディレクトリを検索することを意味します。例えば、 find you/path -mtime +7 -name '*.log'次のようになります。

検索は完了しました。次のステップは削除です。上記のステートメントに基づいて、-exec パラメータを追加すると削除を実現できます。このパラメータは、find コマンドの戻り値が True の場合にコマンドが実行されることを意味します。したがって、完全なステートメントはfind you/path -mtime +7 -name '*.log' -exec rm -rf {} \;ます。実際の実行では、16日より古いログを削除してください。そうしないと、次のデモは機能しません。

16 日前にはログが 1 つしかありませんでした。実行後、再び見つからないため、削除が成功したことがわかります。

スケジュールされたタスクを設定する

最後に、スケジュールされたタスクにコマンドを追加します。 crontab コマンドと実行時間の設定については、以下のリファレンスを参照してください。
追加する前に、14日前のログを見てみましょう

ログがあります。スケジュールされたタスクを編集し、crontab -e を実行し、ログ削除コマンド*/1 * * * * find you/path -mtime +14 -name '*.log' -exec rm -rf {} \;を末尾に追加して、1 分ごとに 1 回実行されるように設定します。少し待ってから、14 日前のログを確認してください。

スケジュールされたタスクを追加した後、手動で削除しなくてもログが自動的に削除されていることがわかります。もちろん毎分実行する必要はありません。毎日1時に設定してください。最終的なスケジュールタスクとログ削除コマンドは以下のとおりです。

0 1 * * * find you/path -mtime +7 -name '*.log' -exec rm -rf {} \; 

参考資料: find コマンド、crontab コマンド、crontab を使用してスケジュールされたタスクを追加する Linux。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • Linux環境でログファイルを表示するコマンドの詳細な説明
  • Linux システムでログを手動でスクロールする方法
  • Linux ログ表示方法 6 つのまとめ
  • Linux環境でglogログライブラリを使用する方法
  • Linuxシステムのログの詳細な紹介

<<:  MySQLの使用中に発生した問題

>>:  JavaScript デザインパターン プロキシパターンの学習

推薦する

HTMLで境界線を設定する3つの方法の詳細な説明

HTML で境界線を設定する 3 つの方法 境界線の幅: 1px 2px 2px; 境界線のスタイル...

MySQLの指定順序ソートクエリについての簡単な説明

最近、空港や駅でフライト情報を表示するものと似た大型スクリーンディスプレイのプロジェクトに取り組んで...

優れた UI (ユーザー インターフェース) デザイナーになるための 20 の道標

はじめに: インターフェイス デザイナーの Joshua Porter が自身のブログでこの記事を公...

JavaScript の基本: ループと配列

目次ループ - for forループの基本的な使い方ループを終了するネストされたループ配列配列とは何...

ドロップダウンメニューを実現するためのHTML+CSS

1. ドロップダウンリストの例コードは次のとおりです。 <!doctypehtml> ...

HTML スライドフローティングボールメニュー効果の実装

CSS スタイル html,本文{ 幅: 100%; 高さ: 100%; マージン: 0;パディング...

vue.js ベースの QQ チャット ルーム

目次導入効果のデモンストレーションは次のとおりです。 MChat コンポーネントのレンダリング: I...

React diffアルゴリズムソースコード分析

目次単一ノード差分単一要素を調整するマルチノード差分調整子配列ノードが移動したかどうかを判断するには...

vite を使用して vue3 アプリケーションを構築する方法

1. インストールヒント: 現在、VUE3.0 の公式翻訳ドキュメントはありません。しかし、すでに誰...

MySQL共通インデックスとユニークインデックスの選択に関する詳細な分析

各人が固有の携帯電話番号で登録し、ビジネス コードによって重複する携帯電話番号が 2 つ書き込まれな...

HTML(CSSスタイル仕様)を読む必要があります

CSS スタイル仕様1. クラスセレクター2. タグセレクター3. IDセレクター4. CSSスタイ...

HTML 終了タグの問題と W3C 標準

W3C の原則によれば、XML の各開始タグには対応する終了タグが必要です。つまり、<html...

JavaScript は単一のリンクリストプロセス分析を実装します

序文:複数の要素を格納するために、配列は最も一般的に使用されるデータ構造ですが、配列には多くの欠点も...

MySQL の大きなテーブルで大量のデータを一括削除する方法

質問はhttps://www.zhihu.com/question/440066129/answer...

HTMLバージョン宣言DOCTYPEタグ

通常のウェブサイトのソースコードを開くと、ソースコードは<!DOCTYPE htmlで始まる必...