Không có mô tả

maxmind dee8184ca9 更新 'README.md' 10 tháng trước cách đây
.gitignore b605fb1d24 Initial commit 10 tháng trước cách đây
README.md dee8184ca9 更新 'README.md' 10 tháng trước cách đây

README.md

UTXO归集脚本使用说明

本目录包含两个UTXO归集脚本,用于归集多个UTXO币(在nockchain中称为notes)到指定地址。

脚本文件

1. consolidate_utxos.sh - 完整功能版本

功能最全面的归集脚本,支持精确控制要归集的notes。

主要功能

  • 扫描并更新本地UTXO余额
  • 列出所有可用的notes
  • 支持指定要归集的notes
  • 自动计算余额和手续费
  • 详细的错误处理和参数验证
  • 彩色输出和进度提示

使用方法

# 基本用法 - 归集指定的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
  • 简化的参数配置
  • 快速执行

使用方法

# 归集所有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