当前位置: 首页 > web >正文

删除 nexus3 中指定仓库中的所有组件的脚本

#!/bin/bash# === 配置项 ===
NEXUS_URL="https://nexus.test.com"
REPO_NAME="npm-taotao-proxy"
USERNAME="admin"
PASSWORD="123456"# 日志目录
LOG_DIR="/tmp/nexus-delete"
mkdir -p "$LOG_DIR"
LOG_FILE="$LOG_DIR/delete.log"
exec > >(tee -a "$LOG_FILE") 2>&1log() {echo "[$(date '+%F %T')] $*"
}# === 删除开始 ===
log "开始清理仓库:$REPO_NAME"TOKEN=""while true; dolog "请求组件列表 continuationToken=${TOKEN:-<none>}"RESPONSE=$(curl -s -u "$USERNAME:$PASSWORD" \"$NEXUS_URL/service/rest/v1/components?repository=$REPO_NAME${TOKEN:+&continuationToken=$TOKEN}")echo "$RESPONSE" | jq -r '.items[].id' | while read -r COMPONENT_ID; dolog "尝试删除组件 ID: $COMPONENT_ID"DELETE_RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" -u "$USERNAME:$PASSWORD" \-X DELETE "$NEXUS_URL/service/rest/v1/components/$COMPONENT_ID")if [[ "$DELETE_RESPONSE" == "204" ]]; thenlog "✅ 删除成功: $COMPONENT_ID"elselog "❌ 删除失败: $COMPONENT_ID (HTTP $DELETE_RESPONSE)"fidoneTOKEN=$(echo "$RESPONSE" | jq -r '.continuationToken')if [[ -z "$TOKEN" || "$TOKEN" == "null" ]]; thenlog "所有组件已处理完成。"breakfisleep 1  # 防止请求过快
done

删除完成后,在 nexus Task 模块中创建一个任务 Compact blob store,然后执行它进行实际磁盘的回收。


(END)

http://www.xdnf.cn/news/9255.html

相关文章:

  • Halcon联合QT ROI绘制
  • 详解 .net9 内置 Lock 对象,更加现代化和灵活可控的锁对象
  • 分贝计在评估噪音对老年人影响中的具体作用和应用方式
  • qml和JavaScript的QtObject是 QML 中用于存储无界面,纯数据。应用场景:计算器、遥控器、告警类型映射
  • SD08_解决由于anaconda版本过低无法安装高版本python的问题
  • 5分钟入门WPF和FluentValidation数据验证
  • opencv(C++) 图像滤波
  • Dataset和Dataloader
  • VR三维数字空间还原
  • 大模型(4)——Agent(基于大型语言模型的智能代理)
  • 计算机网络基础知识
  • 7000字基于 SpringBoot 的 Cosplay 文化展示与交流社区系统设计与实现
  • 批量文件重命名工具
  • Web安全测试-文件上传绕过-DVWA
  • 【机器学习基础】机器学习入门核心算法:K-近邻算法(K-Nearest Neighbors, KNN)
  • 高效多线程图像处理实战
  • pycharm 新UI 固定菜单栏 pycharm2025 中文版
  • 小样本分类新突破:QPT技术详解
  • Mac M1 安装 ffmpeg
  • winsock对话设计框架
  • 大咖课 | 后期-文本分析
  • 新编辑器编写指南--给自己的备忘
  • 【请关注】VC++ MFC常见异常问题及处理方法
  • 如何使用PHP创建一个安全的用户注册表单,包含输入验证、数据过滤和结果反馈教程。
  • 第三十三天打卡
  • Windows安装Docker部署dify,接入阿里云api-key进行rag测试
  • 新消息!阿里云ACP大模型认证有变化!
  • https下git拉取gitlab仓库源码
  • tmux 入门实用指南(面向远程 Linux 开发者)
  • 测试报告里都包含哪些内容?