|
|
@@ -1,2 +1,128 @@
|
|
|
-# nockchain-coin-tool
|
|
|
+# UTXO归集脚本使用说明
|
|
|
|
|
|
+本目录包含两个UTXO归集脚本,用于归集多个UTXO币(在nockchain中称为notes)到指定地址。
|
|
|
+
|
|
|
+## 脚本文件
|
|
|
+
|
|
|
+### 1. `consolidate_utxos.sh` - 完整功能版本
|
|
|
+
|
|
|
+功能最全面的归集脚本,支持精确控制要归集的notes。
|
|
|
+
|
|
|
+#### 主要功能
|
|
|
+- 扫描并更新本地UTXO余额
|
|
|
+- 列出所有可用的notes
|
|
|
+- 支持指定要归集的notes
|
|
|
+- 自动计算余额和手续费
|
|
|
+- 详细的错误处理和参数验证
|
|
|
+- 彩色输出和进度提示
|
|
|
+
|
|
|
+#### 使用方法
|
|
|
+
|
|
|
+```bash
|
|
|
+# 基本用法 - 归集指定的notes
|
|
|
+./consolidate_utxos.sh --names "note1,note2,note3" --fee 1
|
|
|
+
|
|
|
+# 仅扫描余额
|
|
|
+./consolidate_utxos.sh --scan-only
|
|
|
+
|
|
|
+# 仅列出notes
|
|
|
+./consolidate_utxos.sh --list-only
|
|
|
+
|
|
|
+# 归集到指定地址
|
|
|
+./consolidate_utxos.sh --names "note1,note2" --recipient "33zmSubiizyAVzeSfKbVtLMKifm5u6VaTt9wae5K4CT6h5PLXovecjYwxwDXuzfKVsuefe1wh2VJVHAh4nbA53zBiXKf2Nc3fN3sVmZpmPWneUYGbWcXKzhmN714DVbzaS9U"
|
|
|
+
|
|
|
+# 使用自定义主公钥
|
|
|
+./consolidate_utxos.sh --master-pubkey "YOUR_MASTER_PUBKEY" --names "note1,note2"
|
|
|
+```
|
|
|
+
|
|
|
+#### 参数说明
|
|
|
+- `--master-pubkey PUBKEY`: 主公钥地址
|
|
|
+- `--recipient PUBKEY`: 接收地址(默认使用主公钥)
|
|
|
+- `--fee FEE`: 手续费(单位:nicks,默认1)
|
|
|
+- `--names NAMES`: 要归集的note名称,用逗号分隔
|
|
|
+- `--scan-only`: 仅扫描余额
|
|
|
+- `--list-only`: 仅列出notes
|
|
|
+- `--help`: 显示帮助信息
|
|
|
+
|
|
|
+### 2. `quick_consolidate.sh` - 快速归集版本
|
|
|
+
|
|
|
+简化版本,自动归集所有notes到指定地址。
|
|
|
+
|
|
|
+#### 主要功能
|
|
|
+- 自动扫描所有notes
|
|
|
+- 一键归集所有notes
|
|
|
+- 简化的参数配置
|
|
|
+- 快速执行
|
|
|
+
|
|
|
+#### 使用方法
|
|
|
+
|
|
|
+```bash
|
|
|
+# 归集所有notes到主公钥地址
|
|
|
+./quick_consolidate.sh
|
|
|
+
|
|
|
+# 使用自定义手续费
|
|
|
+./quick_consolidate.sh --fee 2
|
|
|
+
|
|
|
+# 归集到指定地址
|
|
|
+./quick_consolidate.sh --recipient "33zmSubiizyAVzeSfKbVtLMKifm5u6VaTt9wae5K4CT6h5PLXovecjYwxwDXuzfKVsuefe1wh2VJVHAh4nbA53zBiXKf2Nc3fN3sVmZpmPWneUYGbWcXKzhmN714DVbzaS9U"
|
|
|
+
|
|
|
+# 使用自定义主公钥
|
|
|
+./quick_consolidate.sh --master-pubkey "YOUR_MASTER_PUBKEY"
|
|
|
+```
|
|
|
+
|
|
|
+## 工作原理
|
|
|
+
|
|
|
+### 归集流程
|
|
|
+
|
|
|
+1. **扫描余额**: 使用 `nockchain-wallet scan` 更新本地UTXO余额
|
|
|
+2. **获取notes**: 使用 `nockchain-wallet list-notes` 获取所有可用notes
|
|
|
+3. **计算参数**: 解析notes信息,计算总余额和手续费
|
|
|
+4. **创建交易**: 使用 `nockchain-wallet create-tx` 创建归集交易
|
|
|
+
|
|
|
+### 手续费处理
|
|
|
+
|
|
|
+- 手续费从最后一个note中扣除
|
|
|
+- 脚本会验证最后一个note的余额是否足够支付手续费
|
|
|
+- 如果余额不足,脚本会报错并退出
|
|
|
+
|
|
|
+### 余额计算
|
|
|
+
|
|
|
+- 脚本会自动计算所有指定notes的总余额
|
|
|
+- 显示实际归集金额(总余额 - 手续费)
|
|
|
+- 提供详细的余额信息
|
|
|
+
|
|
|
+## 注意事项
|
|
|
+
|
|
|
+1. **备份**: 在执行归集前,建议备份钱包数据
|
|
|
+2. **网络连接**: 确保网络连接正常,能够访问nockchain网络
|
|
|
+3. **余额验证**: 脚本会验证notes是否存在和余额是否足够
|
|
|
+4. **手续费**: 手续费从最后一个note中扣除,确保最后一个note的余额足够支付手续费
|
|
|
+5. **地址格式**: 确保提供的地址格式正确
|
|
|
+6. **Note格式**: Note名称格式为`[prefix suffix]`,脚本会自动处理跨行格式
|
|
|
+
|
|
|
+## 错误处理
|
|
|
+
|
|
|
+脚本包含完善的错误处理机制:
|
|
|
+
|
|
|
+- 参数验证
|
|
|
+- 网络连接检查
|
|
|
+- 余额验证
|
|
|
+- 交易创建验证
|
|
|
+
|
|
|
+如果遇到错误,脚本会显示详细的错误信息并安全退出。
|
|
|
+
|
|
|
+## 示例输出
|
|
|
+
|
|
|
+```
|
|
|
+[INFO] 开始快速归集流程...
|
|
|
+[INFO] 扫描UTXO余额...
|
|
|
+[SUCCESS] UTXO余额扫描完成
|
|
|
+[INFO] 获取notes列表...
|
|
|
+[INFO] Note: [8ksAyMVSFxPSb3HjowGmHhW1rxBRAE3LFfLAWGy4rvxMDCiAvTAPcGS 4D2aAyvdpwDzgD7M6JwBAX4WUMe5pxW4fVt1jVfPMGTxwE9T8raBQ4G], 余额: 454900 nicks
|
|
|
+[INFO] Note: [8ksAyMVSFxPSb3HjowGmHhW1rxBRAE3LFfLAWGy4rvxMDCiAvTAPcGS 8keHXP7RxjB7PTZKQskmjQxBxb8zEFJvX8PcZjatRt9Ver3E8ps9F5N], 余额: 489909 nicks, 扣除手续费后: 489908 nicks
|
|
|
+[INFO] 找到 2 个notes,总余额: 944809 nicks
|
|
|
+[INFO] 创建归集交易...
|
|
|
+[INFO] 归集到地址: 33zmSubiizyAVzeSfKbVtLMKifm5u6VaTt9wae5K4CT6h5PLXovecjYwxwDXuzfKVsuefe1wh2VJVHAh4nbA53zBiXKf2Nc3fN3sVmZpmPWneUYGbWcXKzhmN714DVbzaS9U
|
|
|
+[INFO] 手续费: 1 nicks
|
|
|
+[SUCCESS] 归集完成!归集了 2 个notes,总金额: 944809 nicks
|
|
|
+```
|