(转)Geth控制台使用及Web3.js使用实战
在开发以太坊去中心化应用,免不了和以太坊进行交互,那就离不开Web3。
Geth 控制台(REPL)实现了所有的web3 API及Admin API,
使用好 Geth 就是必修课。结合Geth命令用法阅读效果更佳。
写在前面
阅读本文之前,你需要对以太坊(区块链)有初步的了解,如果你不知道以太坊是什么,请先阅读以太坊是什么。
如果你在我的小专栏之外的地方阅读到本文,你可能只能阅读本文的节选,阅读完整全文请订阅小专栏区块链技术
geth控制台初探 - 启动、退出
安装参考智能合约开发环境搭建
最简单启动方式如下:
$ geth console
geth控制台启动成功之后,可以看到>提示符。
退出输入exit
geth 日志控制
重定向日志到文件
使用geth console启动是,会在当前的交互界面下时不时出现日志。
可以使用以下方式把日志输出到文件。
$ geth console 2>>geth.log
可以新开一个命令行终端输入以下命令查看日志:
$ tail -f geth.log
重定向另一个终端
也可以把日志重定向到另一个终端,先在想要看日志的终端输入:
$ tty
就可以获取到终端编号,如:/dev/ttys003
然后另一个终端使用:
$ geth console 2>> /dev/ttys003
启动geth, 这是日志就输出到另一个终端。
如果不想看到日志还可以重定向到空终端:
$ geth console 2>> /dev/null
日志级别控制
使用--verbosity可以控制日志级别,如不想看到日志还可以使用:
$ geth --verbosity 0 console
启动一个开发模式测试节点
geth --datadir /home/xxx/testNet --dev console
技巧:如果我们经常使用一个方式来启动,可以把命令存为一个bash脚本。
~/bin你可以放一些常用的脚本,并把~/bin加入到环境变量PATH里。
连接geth节点
另外一个启动geth的方法是连接到一个geth节点:
$ geth attach ipc:/some/custom/path
$ geth attach http://191.168.1.1:8545
$ geth attach ws://191.168.1.1:8546
如连接刚刚打开的开发模式节点使用:
geth attach ipc:testNet/geth.ipc
常用命令(API)使用
我们打开一个控制台后,会看到如下输出:
modules代表了所有可以使用的模块:
- 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 shh:1.0 txpool:1.0 web3:1.0
在交互式命令行里输入任何一个模块名,就会列出所有支持的属性和函数,如输入:
```
eth
{
accounts: ["0x856e604698f79cef417aab0c6d6e1967191dba43", "0x81c9fdc9910740cdc0debf90ce52a087e3ce014e"],
blockNumber: 3,
coinbase: "0x856e604698f79cef417aab0c6d6e1967191dba43",
compile: {
lll: function(),
serpent: function(),
solidity: function()
},
defaultAccount: undefined,
defaultBlock: "latest",
gasPrice: 1,
hashrate: 0,
转自:http://www.cnblogs.com/tinyxiong/p/7944921.html
(转)Geth控制台使用及Web3.js使用实战的更多相关文章
- Geth控制台使用及Web3.js使用实战
在开发以太坊去中心化应用,免不了和以太坊进行交互,那就离不开Web3. Geth 控制台(REPL)实现了所有的web3 API及Admin API, 使用好 Geth 就是必修课.结合Geth命令用 ...
- Geth 控制台使用及 Web3.js 使用实战
在开发以太坊去中心化应用,免不了和以太坊进行交互,那就离不开Web3.Geth 控制台(REPL)实现了所有的web3 API及Admin API,使用好 Geth 就是必修课.结合Geth命令用法阅 ...
- 使用web3.js监听以太坊智能合约event
传送门: 柏链项目学院 使用web3.js监听以太坊智能合约event 当我们在前端页面调用合约时发现有些数据不会立即返回,这时还需要再调用更新数据的函数.那么这样的方法使用起来非常不便,监听ev ...
- web3.js编译Solidity,发布,调用全部流程(手把手教程)
web3.js编译Solidity,发布,调用全部流程(手把手教程) 下面教程是打算在尽量牵涉可能少的以太坊的相关工具,主要使用web3.js这个以太坊提供的工具包,来完成合约的编译,发布,合约方法调 ...
- Chrome控制台输入多行js
Chrome控制台输入多行js 分类: chrome2013-09-08 09:40 342人阅读 评论(0) 收藏 举报 控制台 Chrome控制台中回车默认是执行,要想输入换行,应按Enter+S ...
- 再深刻理解下web3.js中estimateGas如何计算智能合约消耗的gas量
我们可使用web3.js框架的estimateGas函数获得一个以太坊智能合约的Gas估计值 ,通过执行一个消息调用或交易,该消息调用或交易直接在节点的VM中执行,并未在区块链中确认,函数会返回估算使 ...
- web3.js
安装 别按照官网上面 npm install web3 下载,我已经吃过一次亏了 npm initnpm install ethereum/web3.js --save web3.isConn ...
- [转]How to Send Ethereum with Web3.js and Node
原文:https://davekiss.com/ethereum-web3-node-tutorial/ Ethereum took the web and cryptocurrency worl ...
- Web3.js API 中文文档
Web3.js API 中文文档 http://web3.tryblockchain.org/Web3.js-api-refrence.html web3对象提供了所有方法. 示例: //初始化过程 ...
随机推荐
- Phoenix系列:二级索引(2)
上一篇介绍了Phoenix基于HBase的二级索引的基本知识,这一篇介绍一下和索引相关的一致性和优化相关内容. 一致性的保证 Phoenix客户端在成功提交一个操作并且得到成功响应后,就代表你所做的操 ...
- python3之end关键字
end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: #!/usr/bin/python3 # Fibonacci series: 斐波纳契数列 # 两个 ...
- C# 单元测试能过,但Web项目就报错!
第一印象肯定是两个项目中各有不同的地方 背景: 公司项目采用IBatic+Castle实现 排查过程: 1.sqlmap文件是否一至,并且读取位置也要正确 2.dao.config文件要一至,读取位置 ...
- SQL中的between and
"between xx and xx "在SQL中的用法 这个大家都很熟悉,但是当问到是否包含两端的值时,就有点儿不确定了.在W3School网站上,有这样的一段话: 参考:ht ...
- Win10正式版U盘安装教程
1.首先我们需要登陆“微软中国下载中心”,从中下载一款名为“MediaCreationTool”的工具,利用该工具可以制作Win10安装U盘.直接通过以下地址快速进入“Windows下载中心”,根据自 ...
- [No0000F0]DataGrid一行Row添加ToolTip,wpf
1. <Window x:Class="WpfApp7.MainWindow" xmlns="http://schemas.microsoft.com/winfx/ ...
- centos 安装oracle 报Checking swap space: 0 MB available, 150 MB required. Failed <<<<
1 系统环境 centos 6.5 oracle 11g 内存 16G 硬盘 ssd 250G 2 运行安装命令: [oracle@localhost database]$ ./runInstalle ...
- mysql缓存分析
- [development][thrift] RPC框架 thrift
一: wiki:https://zh.wikipedia.org/wiki/Thrift 二: 来自IBM的介绍:https://www.ibm.com/developerworks/cn/java/ ...
- mysql学习【第1篇】:初识MySQL
狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! mysql学习[第1篇]:初识MySQL 只会写代码的是码农:学好数据库,基本能混口饭吃:在此基 ...