Gethコンソールでよく使うコマンドをまとめました

Gethコンソールでよく使うコマンドをまとめました

Geth

公開: 2018-01-12

更新: 2020-04-29

こんにちは、いつもお読みいただきありがとうございます。
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")})

fromtoにそれぞれアドレスを入力し、valueweiに変換した数量を入れて送信をする。オプションでgasgaspriceを設定することができる。

ペンディングしているトランザクション確認


> eth.pendingTransaction()

自分のノードから送信したトランザクションでまだ取り込まれていないものが表示されます。

RPCをスタート

外部からgethのノードにアクセスするために使用

> admin.startRPC(host='localhost', port='8545', cors="", apis="eth, net, web3, personal")

RPCをストップ

> admin.stopRPC

おわりに

いつも頻繁に使っているのをリスト化してみました。
コマンドはたくさんあるので試してみてください。

使うコマンドが増えたら随時更新していきます。