Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
  Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具。
# F- k  u3 g7 ^! O
. p2 @$ ?2 v2 [, [$ ^  熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
) K# x& ^2 g1 t7 l8 Z
/ `+ ~* a+ E  O) u* Q/ {( i( [  命令用法: \  U' ]6 P( F

  F- W0 H3 y! x& Q& W' `* K  geth [选项] 命令 [命令选项] [参数…]
8 T# l' @- Q1 h; F: g8 a. w
8 U* Y8 `& {( f% }/ o  版本:
5 ^8 s7 b9 x: e6 z  F* F! G& c1 r( }
  1.7.3-stable
' M9 k3 }! ^( L& a$ Y& M" I( e5 R9 @, ^2 j% m; U
  命令:
1 k$ n( x: ?# o% K. u/ p
/ Y7 X/ g. H1 X, M, o* {  account 管理账户- E- l! v' M$ X, Z4 X2 F

: |6 h: o/ S  F  attach 启动交互式JavaScript环境(连接到节点)
7 m. S( O. q8 w: V6 h' E( ]: R  u. I# m$ ]7 m) f
  bug 上报bug Issues4 V# T& ?8 p. f3 A5 H
. Y8 w+ c1 z- A/ p
  console 启动交互式JavaScript环境
. m% C; i( B! o0 `) D, v5 [4 k2 ~3 W% z% c/ N4 f
  copydb 从文件夹创建本地链  p0 @5 J/ W* x1 g& n5 A9 i

9 J2 A$ L9 A3 f1 I  dump Dump(分析)一个特定的块存储1 W9 c1 g! l# z% r5 D& c

" z" q$ G' ~2 W+ X) Z7 b  dumpconfig 显示配置值  W( |3 E# L9 S7 N3 O5 R/ n  d
5 x6 x+ F' X( m' {9 L* x+ d
  export 导出区块链到文件' T7 W5 d* c- P! _8 z

8 ^# a/ `, w2 {/ J& \  import 导入一个区块链文件
1 N; s$ f. y! W5 a" I$ `7 p
/ H" Z, j2 B$ i9 q7 R: b  init 启动并初始化一个新的创世纪块
5 q* B+ Z, I+ z/ u2 B* v2 k- A& h( v& [* T; J  [: t: x
  js 执行指定的JavaScript文件(多个)
/ g+ z4 U6 B; l  @4 O9 V
9 u' @) f( E$ {  [  license 显示许可信息
/ [% c1 T. f. P% O$ ?% r! h# g+ C! s! P
  makecache 生成ethash验证缓存(用于测试)
3 k4 l/ H& [# N! L, R
, ?( ]/ ?- m  x6 P7 p/ e  makedag 生成ethash 挖矿DAG(用于测试)! K% W. `$ l$ r" i
# c7 x  p& L8 w9 O. R% s
  monitor 监控和可视化节点指标
% N2 `: Z" q1 U% `  w  Q$ k  A6 p
  removedb 删除区块链和状态数据库' X2 H2 j0 c) E

9 B3 u5 I4 A3 e" y$ t# z  version 打印版本号% l- Z% e$ P  @7 \
. B6 |0 w4 D& a) t# o
  wallet 管理Ethereum预售钱包
% G9 y2 I1 X  k$ q) z$ S8 `1 l, ~$ j# }7 [# \% F! B& t0 J
  help,h 显示一个命令或帮助一个命令列表+ K' Y; k9 C- t# l2 J$ i/ D; E/ W

' x5 Q, E0 I  N5 F  ETHEREUM选项:3 \  o" H& ^0 X7 c7 K5 {' I

* i6 u: Q% R8 i% X  --config value TOML 配置文件
# \1 D8 \+ u, u% O- M2 q+ y: y: j, ]2 [5 G- z
  --datadir “xxx” 数据库和keystore密钥的数据目录
$ k& r# `3 S: X) T' \0 `+ H
% A3 c7 Q5 n( p  --keystore keystore存放目录(默认在datadir内)# i; ?: o: X3 Q! @

* X9 `4 H# a  _* U  --nousb 禁用监控和管理USB硬件钱包3 Y7 N2 B$ ~9 b# Q. _
2 M2 K  s: R0 v' g6 ^  z" R
  --networkid value 网络标识符(整型, 1=Frontier, 2=Morden (弃用), 3=Ropsten, 4=Rinkeby) (默认: 1)& ^9 O; m$ P3 M& ^

. d) I: b& ~+ n8 }) q  --testnet Ropsten网络:预先配置的POW(proof-of-work)测试网络+ F. K' T5 j* Q1 V; o4 c( Y

$ z. d+ V3 _8 P4 S% F, ]* n# ~  --rinkeby Rinkeby网络: 预先配置的POA(proof-of-authority)测试网络
/ m6 L2 z+ r- @
0 `1 P  x8 o3 f4 `' [  --syncmode "fast" 同步模式 ("fast", "full", or "light"). J7 H' u$ ?( ]$ x
9 [' z: W9 H. T2 ~6 R
  --ethstats value 上报ethstats service URL (nodename:secret@host:port)0 ~* J! p) I. `
9 V9 |: q9 ^: `' D$ v5 r
  --identity value 自定义节点名' `9 J# D! Q1 e' X: i
) I: V! k& V9 [" {- z
  --lightserv value 允许LES请求时间最大百分比(0 – 90)(默认值:0)
3 {: K! Y2 C! D, l8 @+ h
* l+ P: m3 `3 N' P; E  --lightpeers value 最大LES client peers数量(默认值:20)
4 u0 t3 d7 E2 _9 g/ Z
( t6 A, `8 |/ _; p  --lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用
& n( _" a% s* M! ^5 N
1 J8 j4 ^, V. A  开发者(模式)选项:
# {  T8 ^/ l1 Y# J: T
+ v" L3 ?8 R4 ~  --dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
5 a8 b1 q& F  @' Z$ k5 l: e) u4 r* {1 g# R3 I4 j
  --dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0)
$ m; o) b0 U$ B) J8 E0 O; s
6 g* M  T/ x& u& q: U  ETHASH 选项:
" Y: _  o. b% l. `+ O6 X. k3 J% _1 W: o, V8 o" q1 C
  --ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)
" x& z- |+ n& k! y7 t" [& }8 X: Q6 g) l* l" x! G4 n
  --ethash.cachesinmem value 在内存保存的最近的ethash缓存个数 (每个缓存16MB ) (默认: 2); i) g+ e2 \2 G/ c

8 |  O- o) c. ]3 d( f2 e  --ethash.cachesondisk value 在磁盘保存的最近的ethash缓存个数 (每个缓存16MB) (默认: 3)5 @( u: D/ k. H/ W6 m1 N2 J
" ^" d4 y- a# _- C* L, e
  --ethash.dagdir "" 存ethash DAGs目录 (默认 = 用户hom目录)
% V- i1 f. s  L$ [8 {9 w5 w# ?! b6 o7 Z! l) |) }' X
  --ethash.dagsinmem value 在内存保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 1)# E+ f$ a4 f0 f8 B  `

; l( h4 o' O. F" M  ]3 A+ S1 @  --ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2)
. ^+ \5 E9 m7 `) c1 _6 b6 ~0 {- S8 L$ X# j
  交易池选项:; b% R9 v6 T; w( x: F0 [' g; w2 U

$ W: S1 m, S; a# t! M. Y" Y  r  --txpool.nolocals 为本地提交交易禁用价格豁免
3 w% N4 g9 r' G+ e9 p3 p0 |, I' s" V1 X( ?
  --txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")7 i0 p# Y7 G) {3 I( s

& v2 \2 u4 ]% R6 y  --txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时)) w1 r* M; }+ b/ P& p

% O9 B- ?; p9 l, e  --txpool.pricelimit value 加入交易池的最小的gas价格限制(默认: 1)
* e; a' C6 o9 w, O4 C. {( D, k2 X# k; A8 a5 ]
  --txpool.pricebump value 价格波动百分比(相对之前已有交易) (默认: 10)
2 e( [% y" I9 @/ m- X7 n  S3 D% E! C! E1 B
  --txpool.accountslots value 每个帐户保证可执行的最少交易槽数量 (默认: 16)' Y$ T) k6 v. n: x3 s, f1 g/ U
3 K5 e. F; r7 [6 v! @, Y+ |2 j
  --txpool.globalslots value 所有帐户可执行的最大交易槽数量 (默认: 4096)
5 b9 g% H7 |% `" F! V! O0 y" b% _' Y$ q& ?
  --txpool.accountqueue value 每个帐户允许的最多非可执行交易槽数量 (默认: 64)5 N( @- \' O) I! L4 @

, W/ [+ G6 g1 o8 r& ?4 e8 d  --txpool.globalqueue value 所有帐户非可执行交易最大槽数量 (默认: 1024)
% U0 L/ [& K6 }: P& a5 F9 G* z1 v  E) m+ P) x- O- ?
  --txpool.lifetime value 非可执行交易最大入队时间(默认: 3小时)
% O1 H) I% E1 M" Q7 L8 d6 D( \( s8 z
  性能调优的选项:% t+ i, `) s/ T6 V9 b0 O4 [
3 D; H( ?& M3 h/ u5 L) [  Q
  --cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128)
9 E' r: `3 W- g0 M
8 u5 @6 n" _5 u! n' }  `- i8 s  --trie-cache-gens value 保持在内存中产生的trie node数量(默认:120)/ k. n2 `8 v! h/ b8 W6 \

& D4 n+ F% r' i3 D& M$ G* J  帐户选项:2 h% A, E. C" B4 u: [0 y5 l) \

) Q0 |( s7 ]% G: c; Y; y. ]. n  --unlock value 需解锁账户用逗号分隔& e2 g( ]7 ?, J  z+ t8 n( o- D9 O

' I* |" f) _1 {7 T% m9 l* f  --password value 用于非交互式密码输入的密码文件
1 ?* ?3 m0 ^6 H' t0 D7 b. l6 t4 b! Q6 f) j& [) |' J8 e
  API和控制台选项:
9 G' q' b% K: N2 l+ ~8 C( ]( u7 D1 R1 L; P6 Q1 W
  --rpc 启用HTTP-RPC服务器
" B# l6 n) t! Q; W* L% a
$ ?* W: p- `; M9 B& [+ W* Y2 D8 y) A  --rpcaddr value HTTP-RPC服务器接口地址(默认值:“localhost”)5 E( o0 @  D& K; y
5 j& D  y$ ^4 r' M0 t) y
  --rpcport value HTTP-RPC服务器监听端口(默认值:8545)* d& |% @0 T' m! N
' R; T3 Y9 U" Z0 y% m
  --rpcapi value 基于HTTP-RPC接口提供的API, Z% y3 e# D6 {. A
( z; J& n# }9 J3 x1 g0 M
  --ws 启用WS-RPC服务器- s- e) ?/ d  y/ [/ d

- i# E# N9 W6 A/ }% r" h  --wsaddr value WS-RPC服务器监听接口地址(默认值:“localhost”)
7 }' Q" \( O3 |0 s+ W; f5 @6 h4 g- N' z7 Z* _5 Z- J
  --wsport value WS-RPC服务器监听端口(默认值:8546)$ m  P' u1 o' s( u' w
4 {4 H% p8 i$ O" M4 |4 f% U: {
  --wsapi value 基于WS-RPC的接口提供的API
; e  j% k  b) K! q
; a$ ?  y+ }& d7 F) @  --wsorigins value websockets请求允许的源
" i0 w& ^" ]5 l6 h8 {% o* _# h6 B* Q6 S( D* Z
  --ipcdisable 禁用IPC-RPC服务器
) I" m8 g6 N) k
# y$ @# P$ Z$ S7 X+ l+ `# S  --ipcpath 包含在datadir里的IPC socket/pipe文件名(转义过的显式路径)# G; c0 f! _& g5 d" |3 h; }8 t

! X+ r. Z$ E, d: J  --rpccorsdomain value 允许跨域请求的域名列表(逗号分隔)(浏览器强制)
1 P2 }" ?; L9 p* _4 k4 v& c* W) ~, d  J0 m! ~1 F( Q5 z
  --jspath loadScript JavaScript加载脚本的根路径(默认值:“.”)3 C" z; i% Q4 I

4 O  [$ s* F: B; A% T  --exec value 执行JavaScript语句(只能结合console/attach使用)
' T2 S+ M$ z& x) V$ c: n  h" n
: Q0 E2 I6 X* ~  --preload value 预加载到控制台的JavaScript文件列表(逗号分隔)5 M* h! P4 ^+ x7 N: N( q4 D# p
- f! a3 t4 ^/ P. ~# F: x1 k
  网络选项:
3 V1 m. _& @+ }$ K1 V- B, p! O. E
  --bootnodes value 用于P2P发现引导的enode urls(逗号分隔)(对于light servers用v4+v5代替)* J, Q( d* C' a; c: U5 j
. E1 R4 _6 R& Q* w/ ?8 c" L
  --bootnodesv4 value 用于P2P v4发现引导的enode urls(逗号分隔) (light server, 全节点)5 r6 d# b8 z+ Q4 s
" O- s  B) [9 z& ^  @; w# R. d
  --bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点)+ P9 y4 L  I6 Q# ]+ G8 n2 {
9 z0 u6 U9 R% s& k0 M- _
  --port value 网卡监听端口(默认值:30303); _( @# s* U. e7 c1 e  f  U- }/ O0 c

9 N0 Z$ t+ A/ O6 Q2 [  --maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)" Q  N. w5 R2 A

$ e( B' G  s5 _  --maxpendpeers value 最大尝试连接的数量(如果设置为0,则将使用默认值)(默认值:0)/ ]* K6 w7 i- l* E0 ]$ C6 z* }

" I4 D* A6 b; k* L  --nat value NAT端口映射机制 (any|none|upnp|pmp|extip:[I]) (默认: “any”)5 B7 s2 J- {+ Z8 h1 B) q9 T4 j. w

7 j1 n5 ^0 ?$ R# x7 N  --nodiscover 禁用节点发现机制(手动添加节点)+ o5 G. {+ b6 \, f1 X0 O

$ o3 W! [* w2 n+ J9 p  }  --v5disc 启用实验性的RLPx V5(Topic发现)机制: I' E0 T, P% ~, j

5 j7 Q! _; x. W$ w7 F6 G  --nodekey value P2P节点密钥文件
9 t2 Q5 B* B( P! \8 L8 w% s( H7 s4 I6 s) b! O6 b( L
  --nodekeyhex value 十六进制的P2P节点密钥(用于测试)" v7 d1 n* G6 a8 _: F
( ^3 r0 A# T. o0 h  Q# J+ S3 E! e
  矿工选项:3 y6 ?- |/ u# |4 o* t/ m

' |7 k; Q0 S; q, a, L7 i  --mine 打开挖矿
0 a' f& [, l" x" k4 v! x3 {0 \) c
/ z  @8 _7 [$ q8 y* @  --minerthreads value 挖矿使用的CPU线程数量(默认值:8), x8 \8 r  A$ V- j/ N2 z# O

9 J3 X1 n) X1 z# h$ T- O* T  --etherbase value 挖矿奖励地址(默认=第一个创建的帐户)(默认值:“0”)3 N' l: {# }* i  m7 h
3 C. _& h; G6 {! u1 N
  --targetgaslimit value 目标gas限制:设置最低gas限制(低于这个不会被挖?) (默认值:“4712388”)' w' g- n& _7 T/ A3 T6 {" b
4 L5 v" ~" w$ L8 x: s3 `
  --gasprice value 挖矿接受交易的最低gas价格
8 g4 s8 I9 L$ u5 y% |& q. ?' }6 S
) B& x1 B+ F( P+ R+ G: _  --extradata value 矿工设置的额外块数据(默认=client version)
/ J) K% A. C) J" a1 r
$ x8 I' q4 e2 y$ ?  S  GAS价格选项:/ N% X9 n% \, M7 i0 |5 h. }* k

; Q- B2 L; i* q. G# V  --gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10): k# X& |' G4 G2 A- i9 }
. ]+ o2 W2 t/ y
  --gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50)
% c9 Z: s" G. E+ ^" @0 N7 N3 M+ c. B/ C0 i; x4 s
  虚拟机的选项:
  o  a6 {% }4 Y  I
6 n7 g; q. x# b! @7 \# H( @  --vmdebug 记录VM及合约调试信息
4 v" r1 U% w# h  p. Z) ^+ v( A# |, I" _/ s
  日志和调试选项:
2 x3 M7 n6 `8 G+ i% h
9 h1 l5 a8 M: d3 u  --metrics 启用metrics收集和报告8 C5 v' F' s& g4 E2 Z! `$ @3 f& j! @( `

8 T, m$ p; s" u- l0 m2 b  --fakepow 禁用proof-of-work验证
4 }3 Z% j# r8 p5 {$ B6 R/ c$ y. t1 U. l
  --verbosity value 日志详细度:0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3): u3 W& R- y, L% M9 q8 _

* f. N2 u' \5 G0 z5 z" e& A  --vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5); N" s7 z8 z6 l5 h
5 i4 Q7 N/ q2 L) {* y' O" i
  --backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)
( [& |0 |: {  `9 ]& p4 U6 r1 Q; w8 a4 Y( }
  --debug 突出显示调用位置日志(文件名及行号): l! Z" ~9 n3 F) v
9 U: C6 D7 i- o9 t; [2 C1 e. @
  --pprof 启用pprof HTTP服务器7 r& ]9 d# g( q3 f; ^% k# E% \" n9 D

2 a* X- t. J# m1 Z! v) I/ ~$ L* E  --pprofaddr value pprof HTTP服务器监听接口(默认值:127.0.0.1)' [  F. ^1 _- L: D, G- n

  C  ^8 @" W2 @; Y  --pprofport value pprof HTTP服务器监听端口(默认值:6060)  ?; ~9 v" H7 N2 v+ b

( r3 p0 K0 h( f3 o+ n  n  --memprofilerate value 按指定频率打开memory profiling (默认:524288)
4 B/ Y, b1 [: [* S; ^
+ q1 h5 ]- P9 i" ?  --blockprofilerate value 按指定频率打开block profiling (默认值:0)  t  l. H  s7 M2 B

: }& a5 L' v/ O8 w. y  --cpuprofile value 将CPU profile写入指定文件8 d) q& R6 C1 V+ X7 f) Q
  X8 F: K+ i- |2 f
  --trace value 将execution trace写入指定文件( S  G. V) B# `/ R: d, @, j
' s/ q0 N3 D1 u% C* q# h
  WHISPER实验选项:2 H* }3 k/ U- z* o* G

6 `1 Q$ S8 W6 _; }# Q4 G! y  --shh 启用Whisper  l0 v, r1 z! r( Q8 V) A

6 ^2 o  w! U3 [; r  --shh.maxmessagesize value 可接受的最大的消息大小 (默认值: 1048576)
+ N; W. h4 W/ |4 I0 \; x% Y) {7 }& b2 t& i2 e2 ]
  --shh.pow value 可接受的最小的POW (默认值: 0.2)# I$ X& u8 y& H% z. [; {

4 Q" L  _8 F* y  Y! W  弃用选项:6 r' N9 f! z, p
8 J. ~; g6 C) y  V  f5 j6 [4 r
  --fast 开启快速同步
5 |" ?. @3 o9 n1 p" G3 U2 q8 G' I" L  C$ N7 x* }, b/ G
  --light 启用轻客户端模式
4 I* D; G& r- \" W+ g4 M  F, M, {3 {2 F. K
  其他选项:$ v! i9 m+ t$ D4 ]2 O
" x! \4 z+ Q- f1 n, m
  –help, -h 显示帮助
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

东阿制造 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    18