一、进入操作界面
要进入Geth Console,可以在启动geth节点时使用console参数。该参数将启动一个交互式的JavaScript环境,其中>是命令提示符。在这个环境里,你可以直接使用内置的JavaScript对象来操作以太坊。这些对象主要包括:
- eth:包含一些跟操作区块链相关的方法;
- net:包含一些查看p2p网络状态的方法;
- admin:包含一些与管理节点相关的方法;
- miner:包含启动和停止挖矿的一些方法;
- personal:主要包含一些管理账户的方法;
- txpool:包含一些查看交易内存池的方法;
- web3:包含了以上对象,还包含一些单位换算的方法。
二、账户管理
在Geth Console中,可以使用personal对象来管理账户。常用的方法包括:
- personal.newAccount():创建账户;
- personal.unlockAccount():解锁账户;
- personal.lockAccount():锁定账户;
- personal.listAccounts():枚举系统中的账户;
- personal.sendTransaction():发送交易。
三、挖矿
使用miner对象可以控制挖矿。常用的方法包括:
- miner.start():开始挖矿;
- miner.stop():停止挖矿;
- miner.setExtra():设置额外的挖矿参数;
- miner.setEtherbase():设置以太币的接收地址。
四、交易池
使用txpool对象可以查看交易池的状态和内容。常用的方法包括:
- txpool.status():查看交易池中的状态;
- txpool.inspect():查看交易池的详细信息;
- txpool.content():查看交易池中的具体交易。
五、节点
使用admin对象可以管理节点。常用的方法包括:
- admin.datadir():设置或获取数据目录;
- admin.nodeInfo():获取节点信息;
- admin.addPeer():连接到其他节点;
- admin.peers():列出当前连接的节点;
- admin.startRPC():启动RPC服务。
六、网络
使用net对象可以查看网络状态。常用的方法包括:
- net.listening():检查是否在监听状态;
- net.peerCount():获取当前连接的节点数;
- net.version():获取节点版本信息。
七、区块操作
使用eth对象可以操作区块。常用的方法包括:
- eth.coinbase():获取区块的币基地址;
- eth.defaultBlock():获取默认的区块号;
- eth.mining():检查是否在挖矿状态;
- eth.hashrate():获取当前哈希率;
- eth.gasPrice():获取当前燃气价格;
- eth.accounts():枚举系统中的账户;
- eth.blockNumber():获取区块总数;
- eth.getBalance():查看账户余额;
- eth.getBlock():获取指定号的区块;
- eth.getBlockTransactionCount():获取指定号的区块中的交易数;
- eth.getTransaction():获取指定hash的交易;
- eth.getTransactionFromBlock():从区块中获取指定位置的交易;
- eth.getTransactionReceipt():获取交易的收据;
- eth.getTransactionCount():获取账户的交易数;
- eth.sendTransaction():发送交易。