From 7e7e504c4ff1f018446c01d875d095f9a26821a3 Mon Sep 17 00:00:00 2001 From: Ubuntu Date: Thu, 11 Dec 2025 11:20:24 +0800 Subject: [PATCH] =?UTF-8?q?coverjson.sh=20=E7=94=A8=E6=9D=A5=E6=8A=8A?= =?UTF-8?q?=E4=BB=8Ees=E9=87=8C=E5=BE=97=E5=88=B0=E7=9A=84=E6=9F=90?= =?UTF-8?q?=E4=B8=AA=E9=9D=9E=E6=9C=80=E4=BC=98=E8=A7=A3=E8=A6=86=E7=9B=96?= =?UTF-8?q?=E5=88=B0json=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/coverjson.sh | 124 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 tools/coverjson.sh diff --git a/tools/coverjson.sh b/tools/coverjson.sh new file mode 100644 index 00000000..ad09b72f --- /dev/null +++ b/tools/coverjson.sh @@ -0,0 +1,124 @@ +#!/bin/bash + +# 脚本功能:将 optimized.json 中 parameters 的属性值覆盖到 freqaiprimer.json 中的同名属性 + +set -e + +# 定义文件路径 +OPTIMIZED_JSON="../freqtrade/templates/optimized.json" +FREQAIPRIMER_JSON="../freqtrade/templates/freqaiprimer.json" + +# 检查文件是否存在 +if [ ! -f "$OPTIMIZED_JSON" ]; then + echo "❌ 错误:文件 $OPTIMIZED_JSON 不存在" + exit 1 +fi + +if [ ! -f "$FREQAIPRIMER_JSON" ]; then + echo "❌ 错误:文件 $FREQAIPRIMER_JSON 不存在" + exit 1 +fi + +# 检查 jq 是否安装 +if ! command -v jq &>/dev/null; then + echo "❌ 错误:未安装 jq 工具,请先安装 jq" + exit 1 +fi + +echo "🔍 正在从 $OPTIMIZED_JSON 提取 parameters 中的属性..." + +# 从 optimized.json 中提取 parameters 对象 +PARAMETERS=$(jq -c '.hits.hits[0]._source.parameters' "$OPTIMIZED_JSON") + +if [ "$PARAMETERS" = "null" ]; then + echo "❌ 错误:在 $OPTIMIZED_JSON 中未找到 parameters 对象" + exit 1 +fi + +echo "✅ 成功提取 parameters 对象" + +# 显示将要覆盖的参数 +echo "📋 将要覆盖的参数:" +echo "$PARAMETERS" | jq 'to_entries[] | "\(.key): \(.value)"' | sed 's/"//g' + +# 备份原文件 +cp "$FREQAIPRIMER_JSON" "$FREQAIPRIMER_JSON.backup.$(date +%Y%m%d_%H%M%S)" +echo "💾 已备份原文件至: $FREQAIPRIMER_JSON.backup.$(date +%Y%m%d_%H%M%S)" + +# 更新 freqaiprimer.json 文件中的参数 +echo "🔄 正在更新参数..." + +# 使用 Python 脚本进行参数更新,避免复杂的 jq 嵌套 +python3 <