Linux は n 日前のログとサンプルコマンドを自動的に削除します

Linux は n 日前のログとサンプルコマンドを自動的に削除します

1. ファイル削除コマンド:

対応するディレクトリを検索します -mtime + 日数 -name "ファイル名" -exec rm -rf {} \;

コマンドの例:

/opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \; を検索します。

例:

/opt/soft/log/ ディレクトリ内の 30 日以上経過した「.log」ファイルをすべて削除します。具体的なパラメータは以下のとおりです。

find: Linux 検索コマンド。ユーザーは指定された条件でファイルを検索します。

/opt/soft/log/: クリーンアップする任意のディレクトリ。

-mtime: 標準的なステートメントの記述方法。

+30: 30 日前のファイルを検索します。数字は日数を表します。

「*.log」: 検索するデータのタイプ、「*.jpg」は拡張子が jpg のすべてのファイルを検索することを意味します、「*」はすべてのファイルを検索することを意味します。これは柔軟に使用でき、1 つの例から推論を導き出すことができます。

-exec: 書き込みを修正しました。

rm -rf: ディレクトリを含むファイルを強制的に削除します。

{} \; : 固定の記述方法。中括弧のペア + スペース + \+;

2. 計画されているタスク:

毎回手動でステートメントを実行するのが面倒だと思う場合は、この小さなステートメントを実行可能なシェル スクリプト ファイルに記述し、cron スケジュール実行を設定すると、システムが自動的に関連ファイルをクリーンアップできるようになります。

2.1 シェルを作成する:

/opt/soft/bin/auto-del-30-days-ago-log.sh をタッチします。
chmod +x 30日前のログを自動削除します。

新しい実行ファイル auto-del-30-days-ago-log.sh を作成し、実行権限を割り当てます。

2.2 シェルスクリプトを編集します。

vi 自動削除 30 日前 ログ.sh

auto-del-30-days-ago-log.sh ファイルを次のように編集します。

#!/bin/sh
/opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \; を検索します。

OK、保存して終了します (:wq)。

2.3 計画されたタスク:

#crontab -e

auto-del-30-days-ago-log.sh実行スクリプトをシステムのスケジュールされたタスクに追加し、特定の時間に自動的に実行します。

入力:

10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

ここでの設定は、毎日午前 0:10 に auto-del-7-days-ago-log.sh ファイルを実行して、データ クリーニング タスクを実行することです。

上記の 3 つの手順を完了すると、ハードディスクの容量がいっぱいになってログ ファイルをクリーンアップする必要があるかどうかを心配する必要がなくなります。サーバーのハードディスク容量が不足しているという警告メッセージも表示されなくなります。安心して本を読んだり、コーヒーを飲んだりできます。

タスクを追加するたびに、必ずcrondサービスを再起動してください。そうしないと、タスクは有効になりません。

コードは次のとおりです。

service crond restart

最初のシェルスクリプトを作成する

1. スクリプトを書く

a) touchコマンドを使用してファイルを作成します: touch my_script

b) vimエディタでmy_scriptファイルを開きます: vi my_script

c) vim エディタで my_script ファイルを編集します。内容は次のとおりです。

#!/bin/bash は、スクリプトを解釈するためにどのプログラムを使用するかをシェルに指示します #私の最初のスクリプト
ls -l .*

2. シェルの実行を許可する

chmod 755 my_script

3. my_scriptスクリプトを実行する

./my_script

要約する

上記は、n 日前に Linux のログの自動削除についてご紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Linuxは毎週45日前のログをクリーンアップするためにスケジュールされたタスクを使用します
  • Linux で Tomcat ログをスケジュール的にカットし、指定した日数より古いログ レコードを削除する
  • Linux システムで nginx ログを毎日カットするスクリプトの書き方
  • Linux でのログタイミングポーリングのプロセスの詳細な説明
  • Linux で Mongodb データベース ログをスケジュールに従ってカットし、指定した日数より古いログ レコードを削除する
  • Linux で 7 日前のログを削除するコード (php+shell)
  • Linux でアーカイブ ログ ファイルを自動的に削除する方法
  • Linux のタイムドログ削除を実装する簡単な方法

<<:  Node.js ファイルのコピー、フォルダの作成、その他の関連操作

>>:  MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル (Win7 の場合)

推薦する

docker を使用してシンプルな C/C++ プログラムをデプロイする方法

1. まずhello-world.cppファイルを作成しますプログラムコードは次のとおりです。 #i...

CSS で背景ぼかし効果を実装するサンプルコード

以下のような効果でしょうか?もしそうなら、ぜひ読み進めてください! コードデモンストレーション(上の...

Navicat による MySQL パーティショニングの実践

MySQLのパーティショニングは、非常に大きなテーブルを管理するのに役立ちます。MySQLのパーティ...

Presto をインストールし、Docker で Hive を接続する詳細なプロセス

1. はじめにPresto は、ギガバイトからペタバイトに及ぶデータ ソースに対してインタラクティブ...

MySQL レプリケーションの利点と原則を詳しく説明します

レプリケーションとは、マスター データベースの DDL および DML 操作をバイナリ ログを介して...

Tomcatの自動シャットダウンに関するバグ修正

序文最近、4 年間実行されている Java EE Web プロジェクトでは、システムが開けないという...

三角形を描画するための CSS 実装コード (border メソッド)

1. 単純な三角形を実装するCSS ボックス モデルの境界線を使用すると、次のような三角形を実現で...

メニューノードのすべての子ノードを再帰的に検索する MySQL メソッド

背景プロジェクトにはメニューノードのすべてのノードをチェックする要件があります。オンラインでチェック...

JavaScript でサウンド効果付きの花火効果を実装する

コードを書くのに 30 分かかりましたが、この HTML5 Canvas New Year Fire...

MySQL データベース接続例外の概要 (収集する価値あり)

Centos にプロジェクトをデプロイするときに奇妙な問題が見つかりました。データベース接続で例外...

crontab スケジュールされたタスクが実行されない理由の分析と解決

序文Linux のスケジュールされたタスクを実装する方法としては、cron、anacron、at な...

koa2 サービスに SSL を設定する方法

I. はじめに1: SSL証明書私のドメイン名は Tencent Cloud にあります。第 3 レ...

DHTML オブジェクト (さまざまな HTML オブジェクトの共通プロパティ)

!DOCTYPE HTML ドキュメントが準拠するドキュメント型定義 (DTD) を指定します。 ...

mysql-8.0.19-winx64 をインストールしてログインするための初心者向けチュートリアル (初心者必読)

目次1. インストールパッケージ(64ビット)をダウンロードする2. MySQLデータベースをインス...

画像をMySQLデータベースに保存し、フロントエンドページに表示するための実装コード

目次1. まず、pycharmを使用してDjangoプロジェクトを作成し、関連する環境を設定します。...