こんにちは、いつもお読みいただきありがとうございます。
Ken(@gootablog)です。
最近EthereumクライアントのGethをちょくちょく触っています。その中でコンソールでよく使うコマンドを備忘録として書いていきます。
Gethのインストール、環境構築などは以下のリンクを参考にしてみてください
Ethereumクライアント「Geth」の環境構築方法
Ethereum(Geth)でプライベートネットを作成
Ethereum(Geth)でテストネット(Ropsten)に接続してみる
Ethereum(Geth)でJSON RPCを使って外部からアクセスする
Ethereum(Geth)をlivenetに接続してみる
Ethereum(Geth)をバックグラウンドで起動する&バックグラウンドからコンソールを起動する
目次
アカウント作成
> personal.newAccount("passphrase")
passphraseに適当なパスフレーズを入力
アカウント一覧
> eth.accounts
バランス取得
> eth.getBalance("address")
表示される単位はweiなので注意
同期しているか確認
> eth.syncing
同期中なら同期開始時のブロック、現在まで同期しているブロック数、最新のブロック数が表示される
同期済みならfalse
が返ってくる
最新のブロックナンバー取得
> eth.getBlockNumber(console.log)
トランザクション取得
> eth.getTransaction("txhash")
txhashを入力するとトランザクションの情報を取得できる
アカウントをアンロック
> personal.unlockAccount("account address", "passphrase", time)
トランザクションを送信する時にアンロックをする必要がある。
account
にはアドレス入れ、passphrase
にはアカウント作成時に入力したパスフレーズを入力し、timeには解除されている時間を入力する。
トランザクション送信
> eth.sendTransaction({from: eth.accounts[0], to: eth.accounts[1], value: web3.toWei(5, "ether")})
from
とto
にそれぞれアドレスを入力し、value
にwei
に変換した数量を入れて送信をする。オプションでgas
やgasprice
を設定することができる。
ペンディングしているトランザクション確認
> eth.pendingTransaction()
自分のノードから送信したトランザクションでまだ取り込まれていないものが表示されます。
RPCをスタート
外部からgethのノードにアクセスするために使用
> admin.startRPC(host='localhost', port='8545', cors="", apis="eth, net, web3, personal")
RPCをストップ
> admin.stopRPC
おわりに
いつも頻繁に使っているのをリスト化してみました。
コマンドはたくさんあるので試してみてください。
使うコマンドが増えたら随時更新していきます。