geth命令行参数经常使用功能

本文介绍geth经常使用的命令和选项,geth有十几个命令和几十个选项,本文只介绍一些最经常使用的命令和选项,解释它们的用法和用途以及可能存在的误区。web

1、geth命令格式

geth命令行的通用格式以下:json

geth [options] command [command options] [arguments...]

其中options是geth的启动参数,它是以--开头指定的一些可选的选项,如--datadir --rpc等。command是geth运行的命令,如init console等,命令能够带有本身可选的选项和参数,如geth init genesis.json中的genesis.json就是init命令的参数。安全

2、经常使用命令

初始化 init

init命令用来初始化创世区块,也就是建立一条链。它须要一个参数:json格式的创世区块配置文件。通常的格式是:websocket

geth --datadir <DATADIR> init <GENESIS_FILE>

如:socket

geth --datadir "yourdatadir" init genesis.json

会在yourdatadir目录下生成geth/chaindata目录,并在这个目录中写入创世区块。若是不指定--datadir选项,会使用默认的datadir,具体请看下文关于--datadir的说明。命令行

管理帐户 account

account命令用来管理帐户,它有四个子命令:code

  • list 打印本地全部帐户地址
  • new 建立一个帐户
  • update 更新一个已有帐户
  • import 导入私钥生成一个帐户

建立一个新帐户,通常格式是:ip

geth --datadir <DATADIR> account new

如:rem

geth --datadir "yourdatadir" account new

会提示你设置帐户密码,而后会生成一个新帐户,帐户存储在yourdatadir/keystore目录中,每一个帐户对应一个文件。rpc

查看帐户:

geth --datadir "yourdatadir" account list

会打印yourdatadir/keystore中的全部帐户和它们的存储位置。

更新帐户,通常格式是:

geth --datadir <DATADIR> account update <address>

如:

geth --datadir "yourdatadir" account update "a364b52f9f8a0c851dd63ec14ddf691018e842fb"

会提示你输入帐户密码,以后再输入一个新密码。update用来将帐户的存储格式升级到最新,另一个功能,就是用来修改密码。

导入私钥,通常格式是:

geth --datadir <DATADIR> import <keyfile>

<keyfile>是一个文本文件,里面的内容是要导入的私钥明文。注意不要泄漏你的私钥。

进入控制台 console

console命令会启动节点并进入交互式JavaScript环境:

geth --datadir "yourdatadir" console

在这里可使用geth内置的全部JavaScript API。

链接到节点 attach

有没有遇到过这样的问题:在geth console中执行miner.start(),而后就被挖矿输出刷屏了,想要再输入其余命令怎么办?能够输入,可是输入仍是被刷屏,体验很差。能够打开两个窗口,一个窗口挖矿,另外一个窗口还能够正常输入命令吗?能够,这就是attach命令的用途。

attach命令会进入交互式JavaScript环境,与console命令不一样的是,attach不会启动新的节点,它只会链接到一个正在运行的节点。就像能够经过终端远程登陆Linux系统同样,attach至关于一个终端,经过它能够“登陆”到一个geth节点,以后的操做就是操做那个节点。 attach支持三种协议:ipc、http、websocket。在Linux中可使用ipc方式,如:

geth attach ipc:yourdatadir/geth.ipc

若是启动节点时使用了--rpc选项,也可使用http方式,如:

geth attach http://localhost:8545

删除数据 removedb

想要删除区块数据?删除<DATADIR>就行了,可是这样连keystore也删了,也就是帐户也没了。若是想保留帐户,安全地删除区块数据,最好使用removedb

geth --datadir "yourdatadir" removedb

这会删除yourdatadir/geth/chaindata,其余东西都不会动。

获取帮助 help

geth help会列出geth命令行全部可用的命令和选项。想要查看某个命令的帮助,输入:

geth help <command>

如:

geth help account

查看account命令的帮助。

若是想查看某个命令的子命令的帮助也能够,如

geth account help new

会显示account new的帮助。

3、经常使用选项

指定数据目录 --datadir

相关文章
相关标签/搜索