geth常用操作命令
geth环境里也内置了一些用来操作以太坊的 JavaScript 对象,可以直接使用这些对象。这些对象主要包括:
eth:包含一些跟操作区块链相关的方法;
net:包含一些查看p2p网络状态的方法;
admin:包含一些与管理节点相关的方法;
miner:包含启动&停止挖矿的一些方法;
personal:主要包含一些管理账户的方法;
txpool:包含一些查看交易内存池的方法;
web3:包含了以上对象,还包含一些单位换算的方法。
账户模块
//查看本地记录账户
eth.accounts
//查看账户
personal.listAccounts
//新建账户
personal.newAccount()
//解锁账户
personal.unlockAccount("0xxxxxxx")
//锁定账户
personal.lockAccount("0xxxxxxx")
转账操作
// 查询账户余额 (单位为wei)
eth.getBalance("0xxxxx")
// 解锁账户。如果不解锁账户,不能转出货币
personal.unlockAccount("0xxxxxA","password")
// 转账
eth.sendTransaction({from:"0xxxxxA",to:"0xxxxxB",value:web3.toWei(3,"ether")})
// 变换单位
web3.toWei(3,"ether")
web3.fromWei(3000000000000000000,"ether")
// ERC20标准代币转账
// 解锁转出地址
personal.unlockAccount("0xxxxxxfrom")
// 转账.myerc是这个实例的id
myerc.transfer.sendTransaction("0xxxxxxto",500000,{from:"0xxxxxxfrom"})
// 查询区块的交易信息
eth.getTransaction
// 查询收据信息
eth.getTransactionReceipt
以太坊货币单位一览表
单位 | 爱称 | Wei |
---|---|---|
Wei | 1 | |
Kwei | Ada | 1000 |
Mwei | Babbage | 1000000 |
Gwei | Shannon | 1000000000 |
Twei | Szabo | 1000000000000 |
Pwei | Finney | 1000000000000000 |
Ether | 1000000000000000000 (10的18次方) | |
Kether | Einstein | 1000000000000000000000 |
NA | Douglas | 10^42 (10的42次方) |
节点操作
// 查看交易池状态(主要是确认pending交易)
txpool.status
// 检查是否连接
> net.listening:
// 连接到的节点个数
> net.peerCount
//返回连接到的节点的详细信息
> admin.peers
// 返回本地节点的详细信息
> admin.nodeInfo
//添加节点
admin.addPeer()
miner:挖矿模块
//设置挖矿账户
> miner.setEtherbase(eth.accounts[0])
//启动挖矿。参数为挖矿线程数量。默认为8个线程。
> miner.start(4)
//结束挖矿
> miner.stop()
//查看挖矿速率
miner.getHashrate()
eth模块
//查看区块高度
> eth.blockNumber
//查看挖矿账户
> eth.coinbase
// number of pending txs
eth.getBlockTransactionCount("pending");
// print all pending txs
eth.getBlock("pending", true).transactions