From 3a4f4618fc3d11ea63534d77004742fe49707d0a Mon Sep 17 00:00:00 2001 From: jshixiong <2645476194@qq.com> Date: Wed, 7 Aug 2024 15:24:59 +0800 Subject: [PATCH] =?UTF-8?q?feat(clean):=20=E5=9E=83=E5=9C=BE=E6=B8=85?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/route/route.py | 14 +++++++++++++- app/sys_clean.py | 29 +++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 app/sys_clean.py diff --git a/app/route/route.py b/app/route/route.py index 8b5c17c..de3a6e0 100644 --- a/app/route/route.py +++ b/app/route/route.py @@ -7,6 +7,7 @@ import app.network as network_usage import app.login_info as login_info import app.request_info as request_info import app.imitate_thread as imitate_thread +import app.sys_clean as sys_clean route_bp = Blueprint('route', __name__) @@ -68,4 +69,15 @@ def get_bugs(): @route_bp.route('/sys/bugs_clean', methods=['POST']) def delete_bugs(): names_list = request.json.get('names_list', []) - return imitate_thread.delete_bugs_queue_data(names_list) \ No newline at end of file + return imitate_thread.delete_bugs_queue_data(names_list) + +# 垃圾文件数量 +@route_bp.route('/sys/junk_files', methods=['GET']) +def get_junk_file(): + return sys_clean.get_junk_file() + +# 清理垃圾文件 +@route_bp.route('/sys/clean_junk', methods=['POST']) +def clean_junk_file(): + filenames = request.json.get('file_list', []) + return sys_clean.clean_junk_file(filenames) \ No newline at end of file diff --git a/app/sys_clean.py b/app/sys_clean.py new file mode 100644 index 0000000..4986228 --- /dev/null +++ b/app/sys_clean.py @@ -0,0 +1,29 @@ +import os +from flask import jsonify, request + +log_directory = '/data/ww/bridge/logs' + +def get_junk_file(): + if not os.path.exists(log_directory): + return jsonify({"file_count": 0, "files": []}) + + files = [name for name in os.listdir(log_directory) if os.path.isfile(os.path.join(log_directory, name))] + file_count = len(files) + return jsonify({"file_count": file_count, "files": files}) + +def clean_junk_file(filenames): + if not os.path.exists(log_directory): + return jsonify({"message": "Files deleted successfully", "deleted_count": 0}) + + + deleted_count = 0 + for filename in filenames: + file_path = os.path.join(log_directory, filename) + try: + if os.path.isfile(file_path): + os.remove(file_path) + deleted_count += 1 + except Exception as e: + print(f'Failed to delete {file_path}. Reason: {e}') + + return jsonify({"message": "Files deleted successfully", "deleted_count": deleted_count}) \ No newline at end of file