主页 > imtoken钱包注册 > 比特币常用命令

比特币常用命令

imtoken钱包注册 2023-05-08 06:10:54

比特币节点的搭建可以参考我之前的文章,包括测试网和私网的搭建。以下是命令行常用的操作命令。

查看钱包信息的钱包相关命令

该命令可以获取钱包版本、余额、交易数量等信息

bitcoin-cli getwalletinfo

获取所有钱包地址及其账户名

bitcoin-cli listreceivedbyaddress 1 true

查看余额

bitcoin-cli getbalance

注意:查询得到的余额是所有钱包地址的可用余额之和,不包括私钥不在节点上的钱包地址的余额。

生成钱包地址

bitcoin-cli getnewaddress "test"  #"test"是输入的账号

查询该地址收到的硬币数量

bitcoin-cli getreceivedbyaddress 2MtmeZ7W17zJzigtRhzKMP6MSc2DSyL5LYU

查询默认钱包地址

此命令在 0.18 版本中已弃用,需要使用 -deprecatedrpc=accounts 启动

bitcoin-cli getaccountaddress ""

加密钱包

比特币钱包挖矿命令

bitcoin-cli encryptwallet mypassword

解锁钱包

bitcoin-cli walletpassphrase mypassword 30 

30表示解锁时间,以秒为单位

锁定钱包

bitcoin-cli walletlock

备份钱包文件

需要先解锁,钱包文件wallet.data可以安全复制到指定文件或目录

bitcoin-cli backupwallet wallet.back

wallet.back 是备份文件名

导入备份文件

需要先解锁

bitcoin-cli importwallet wallet.back

修改钱包密码

bitcoin-cli walletpassphrasechange mypassword 123456

比特币钱包挖矿命令

mypassword 和 123456 分别是旧密码和新密码

导出所有钱包地址和私钥

需要先解锁,并将钱包中的所有密钥导出到指定文件中

bitcoin-cli dumpwallet wallet.txt

导入钱包和私钥

需要先解锁,导入上一步的文件

bitcoin-cli importwallet wallet.txt

导出指定钱包地址的私钥

需要先解锁,结果是字符串

bitcoin-cli dumpprivkey mzqrRSB8LXa8EAwzFE5mLyoGWP66H7X26H

导入指定的钱包私钥

导入上一步的私钥,但是导入的参数是钱包的账户名

bitcoin-cli importprivkey 92dC2MM4dN4ei6qGarVkL48aiUcPjg2uvPdzpFY6QVjBAPQPGWy "test" true

获取指定钱包地址的账户名

bitcoin-cli getaccount 2N5UhqzPfTz1rTG3ALkEMsEN6qNvqXcoZJ2

比特币钱包挖矿命令

更多命令请参考或中文版

导入钱包地址和账户名

参数是地址或公钥,账户名,是否扫描整个区块链(需要很长时间),因为不包含私钥,所以地址只能用于监控比特币钱包挖矿命令,不能用于消费交易

bitcoin-cli importaddress muhtvdmsnbQEPFuEmxcChX58fGvXaaUoVt "watch-only test" false

导入公钥

参数为公钥、钱包账户名、是否重新扫描区块(需要时间)。导入公钥后,节点会同时导入对应的钱包地址,但是没有对应的私钥

bitcoin-cli importpubkey "04aefb3a2b6e0eef583216283b72279cdc1f79a0b99499a0ac9769598278a581ed7734f6b203fcd75fc4836296a4f662dea768671feea454d19b5abdc7a113b081" "transfer test" false

列出所有钱包地址对应的账户名和余额

只包含本节点生成的钱包地址或导入的公钥或私钥的钱包地址

bitcoin-cli listaddressgroupings

请使用旧版本bitcoind的命令,0.18版本已弃用

bitcoin-cli listaccounts    

交易相关命令将资金从默认账户转移到目标地址

bitcoin-cli sendtoaddress "mxHFNt2RXkshzT3CuXb5Dx215BdeNDQRCu" 10

从指定账户转账

比特币钱包挖矿命令

bitcoin-cli sendfrom "test" "n3BMgZMA26TcHnVa5iNJeB3PMqkF3cEWBE" 0.01  

注意:需要生成一个区块来确认交易并记入贷方

生成块

bitcoin-cli generate 1

注意:实践证明只有区块数超过100个才会产生余额

获取交易列表

参数为钱包账户名(*表示全部),要提现的交易次数,默认值:10、要跳过的交易次数,默认值:0、@ >是否包含watch-only地址,默认:false

bitcoin-cli listtransactions "*" 1 0 true

注意:该命令只会列出该节点的交易列表和该节点钱包地址中的私钥,并且必须在bitcoin.conf文件中添加txindex=1

根据交易id查询交易详情

bitcoin-cli gettransaction 47b30a7c5b1cd10183e60676fc0f4a059b96c2f10f16a2828aeb6270f4467500

注意:该命令只能查看本地节点的钱包地址交易。查询节点外的交易会报Invalid or non-wallet transaction id,如果钱包地址的私钥不在节点上,则查询到的数据中的details字段为空比特币钱包挖矿命令,即输入输出数据无法查询该交易。

查询未使用的交易

bitcoin-cli listunspent

或者指定钱包地址和确认区块数的范围,命令:listunspent [minconf=1] [maxconf=9999999] ["address",...] minconf/maxconf 表示确认的范围收入交易的编号,要列出未确认的交易,请将 minconf 设置为 0。

比特币钱包挖矿命令

bitcoin-cli listunspent 0 99999999 '["mi7efAUg86n8LZAFD4hdMTfoKYkj8YYbdA"]'

注意:使用该命令只能获取节点导入的公钥或钱包地址列表,必须在bitcoin.conf文件中添加txindex=1。如果在导入钱包地址前有交易,可以导入公钥或使用地址时将rescan block设置为true

生成未签名交易

bitcoin-cli createrawtransaction '[{"txid":"7fff82f7b28bc12b349e6e4c7482d563e7af6119ca49126bfc04435ce909abbc","vout":0}]' '{"2MuJfZRJi7S7nqaxHrbTRMSTb6GygDD4SFz":1}'

指定找零地址,增加交易输入

找零地址changeAddress可以是发起交易的钱包地址本身。交易成功后,更新未花费交易的txid

bitcoin-cli fundrawtransaction 020000000161dc79011198f3e042f68b6e8a1ae16d9cdab96ada6c8b5a9905adb54c6e92430000000000ffffffff0100e1f5050000000017a9141696d866051fb5ff771acc87f47fb1d4c6bb26778700000000 '{"changeAddress": "2MuJfZRJi7S7nqaxHrbTRMSTb6GygDD4SFz","changePosition" : 1,"includeWatching" : true,"lockUnspents" : true}'

注意:使用该命令时,转账钱包地址必须将公钥或私钥导入节点服务器,否则会失败。

交易签名

最后一个参数是私钥数组

bitcoin-cli signrawtransactionwithkey 020000000161dc79011198f3e042f68b6e8a1ae16d9cdab96ada6c8b5a9905adb54c6e92430000000000ffffffff0200e1f5050000000017a9141696d866051fb5ff771acc87f47fb1d4c6bb26778728d5a4350000000017a9141696d866051fb5ff771acc87f47fb1d4c6bb26778700000000 '["92oH6gkrUHwmts4jNgv71x87RsYe8hnFKJmGDAzg3FQBisKfTo1"]'

旧版本:

bitcoin-cli signrawtransaction 0200000001c7ca59373068bba271bcaeabc8648e400188706178082007f263b310afc712f90000000000ffffffff0100fcac060000000017a91439119c8025990e01c0cd9fdfaf4d5aab603ffcd78700000000

发送交易

bitcoin-cli sendrawtransaction 020000000161dc79011198f3e042f68b6e8a1ae16d9cdab96ada6c8b5a9905adb54c6e9243000000008a47304402201f60fa7cfc8a03cd2be9da0a4c78b00d9e3663748db173c3b778f7946b871e0c022021836426e0800125fe98d9fc8a44fe79a1b775d7e9ea723ee35f21881fb5d385014104ee9fa9f58e21a6d82565cb11391c4673831ae19319b01637ddd7f14fafbcf776608e63e6f0ba39663fd3060ad73d655e31da919e71c7574293b7b2bad1173885ffffffff02c062002d0000000017a9141696d866051fb5ff771acc87f47fb1d4c6bb26778740539a0e000000001976a914b7e29340f24ac2d7b8ac576fab843248298a65dd88ac00000000

其他命令命令列表

bitcoin-cli help

参考文章: