nndeploy.server.clean 源代码


import os
import shutil


[文档]def main() -> None: import argparse # Setup command line argument parser parser = argparse.ArgumentParser(description='Clean nndeploy server directories') parser.add_argument('--logs', action='store_true', help='Clean logs directory') parser.add_argument('--template', action='store_true', help='Clean resources/template directory') parser.add_argument('--db', action='store_true', help='Clean resources/db directory') parser.add_argument('--frontend', action='store_true', help='Clean frontend directory') parser.add_argument('--plugin', action='store_true', help='Clean plugins directory') parser.add_argument('--keep', nargs='+', choices=['logs', 'template', 'db', 'frontend', 'plugin'], help='Keep specified directories (clean all others)') args = parser.parse_args() # Get current directory current_dir = os.getcwd() # Available directories mapping available_dirs = { 'logs': 'logs', 'template': 'resources/template', 'db': 'resources/db', 'frontend': 'frontend', 'plugin': 'resources/plugin' } # Determine directories to clean dirs_to_clean = [] if args.keep: # Clean all directories except the ones specified in --keep for key, path in available_dirs.items(): if key not in args.keep: dirs_to_clean.append(path) elif any([args.logs, args.template, args.db, args.frontend, args.plugin]): # Clean only specified directories if args.logs: dirs_to_clean.append(available_dirs['logs']) if args.template: dirs_to_clean.append(available_dirs['template']) if args.db: dirs_to_clean.append(available_dirs['db']) if args.frontend: dirs_to_clean.append(available_dirs['frontend']) if args.plugin: dirs_to_clean.append(available_dirs['plugin']) else: # Default: clean all directories dirs_to_clean = list(available_dirs.values()) # Execute cleanup operation for dir_name in dirs_to_clean: dir_path = os.path.join(current_dir, dir_name) if os.path.exists(dir_path): try: shutil.rmtree(dir_path) print(f"Successfully deleted directory: {dir_path}") except Exception as e: print(f"Failed to delete directory {dir_path}: {e}") else: print(f"Directory does not exist: {dir_path}")