Geth控制台常用命令

1、Geth控制台命令

Geth Console是一个交互式的JavaScript 执行环境,里面内置了一些用来操作以太坊的JavaScript对象,我们可以直接调用这些对象来获取区块链上的相关信息。
这些对象主要包括:

# 主要包含对区块链进行访问和交互相关的方法
eth

# 主要包含查看p2p 网络状态的方法
net

# 主要包含与管理节点相关的方法
admin

# 主要包含挖矿相关的一些方法
miner

# 包含账户管理的方法
personal

# 包含查看交易内存池的方法
txpool

# 包含以上所有对象,还包含一些通用方法
web3

Geth控制台常用命令_第1张图片

常用命令有:

# 创建账户
personal.newAccount()

# 解锁账户
personal.unlockAccount()
# 解锁账户,指定解锁具体账户
personal.unlockAccount(eth.accounts[0])

# 列出系统中的账户
eth.accounts

# 1、查看账户余额,返回值的单位是 Wei (“ ”里面是自己管理的账户地址)
eth.getBalance()
# 2、查看账户余额,返回值的单位是 Wei (“ ”里面是自己管理的账户地址)
eth.getBalance("写上账户地址")
# 3、转换为单位ether,便于阅读
web3.fromWei(eth.getBalance("写上账户地址"),'ether')
# 4、如果是在里面创建的账户可以调用内部函数拿到地址,不用每次都复制地址。
eth.getBalance(eth.accounts[0])
web3.fromWei(eth.getBalance(eth.accounts[0]),'ether')

#发起交易(发起方需要是自己管理的账户,其次需要先解锁账户),from:发起交易的地址;to:接受交易的地址
eth.sendTransaction({
     from:eth.accounts[0],to:"接受交易的地址",value:100000})

# 列出当前区块高度
eth.blockNumber

# 获取交易信息
eth.getTransaction()

# 获取区块信息
eth.getBlock()

# 开始挖矿
miner.start()
# 表示一直挖矿
miner.start(1)
# 查看
eth.coinbase

# 停止挖矿
miner.stop()
# 开始挖矿,当挖到一个块时就停止,
miner.start(1);admin.sleepBlocks(1);miner.stop()
 
# Wei 换算成以太币
web3.fromWei()

# 以太币换算成 Wei
web3.toWei()

# 交易油中的状态
bxpool.status

Geth控制台常用命令_第2张图片
Geth控制台常用命令_第3张图片

2、进入开发者模式的控制台

需要新创建一个目录,并给相应的权限,然后进入到该目录
Geth控制台常用命令_第4张图片

azf@bigdata05:/opt/MyJsonFile$ sudo geth --datadir ../ --dev console 2>gethoutput.log
Welcome to the Geth JavaScript console!

instance: Geth/v1.9.25-stable-e7872729/linux-amd64/go1.15.6
coinbase: 0x210b9a3545738e04ef17427ec4efbb5c5135d7e1
at block: 0 (Thu Jan 01 1970 08:00:00 GMT+0800 (CST))
 datadir: /opt
 modules: admin:1.0 clique:1.0 debug:1.0 eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0

To exit, press ctrl-d
> eth.accounts
["0x210b9a3545738e04ef17427ec4efbb5c5135d7e1"]
> personal.newAccount("123456")
"0xafa2bc6e8f58601fc0fd3ffe2a79d7487014498f"
> eth.accounts
["0x210b9a3545738e04ef17427ec4efbb5c5135d7e1", "0xafa2bc6e8f58601fc0fd3ffe2a79d7487014498f"]
> web3.fromWei(eth.getBalance(eth.accounts[0]),'ether')
1.15792089237316195423570985008687907853269984665640564039457584007913129639927e+59
> web3.fromWei(eth.getBalance(eth.accounts[1]),'ether')
0
> eth.sendTransaction({
     from:eth.accounts[0],to:eth.accounts[1],value:web3.toWei(10,'ether')})
"0xcc32d8f953dc59645ae25f72ee03fdb020753b582ff56f9ef5166457096e4676"
> eth.getBalance(eth.accounts[1])
10000000000000000000

Geth控制台常用命令_第5张图片
查看交易信息

> eth.blockNumber
1
> eth.getTransaction("0xcc32d8f953dc59645ae25f72ee03fdb020753b582ff56f9ef5166457096e4676")
{
     
  blockHash: "0xebae78ccc24e32f0bab3e2c732dd46e32dd49312f8eb3201af9a77c48e66c939",
  blockNumber: 1,
  from: "0x210b9a3545738e04ef17427ec4efbb5c5135d7e1",
  gas: 21000,
  gasPrice: 1,
  hash: "0xcc32d8f953dc59645ae25f72ee03fdb020753b582ff56f9ef5166457096e4676",
  input: "0x",
  nonce: 0,
  r: "0x285b66836d3936c9ffb468753051fe56c3d139184f38d1523a513f5948833b34",
  s: "0x31461a3fb65963f5920ea42b9b17432ee4d336672f860ab5a250d68f2600efdd",
  to: "0xafa2bc6e8f58601fc0fd3ffe2a79d7487014498f",
  transactionIndex: 0,
  v: "0xa95",
  value: 10000000000000000000
}

Geth控制台常用命令_第6张图片

你可能感兴趣的:(区块链,区块链,Geth,geth命令)