Foundry 智能合约开发工具包Cast 常用命令速查表Cast 是 Foundry 工具套件中的命令行工具用于与以太坊链交互Cast call 查询合约的只读函数Cast send 与合约交互环境配置# 设置常用环境变量exportRPChttps://api.zan.top/node/v1/pharos/atlantic/xxxexportPKyour_private_key# 如需代理exporthttps_proxyhttp://127.0.0.1:7890基础查询# 查询最新区块号cast block-number --rpc-url$RPC# 查询最新区块详情cast block latest --rpc-url$RPC# 查询指定区块cast block12345--rpc-url$RPC# 查询当前 gas 价格cast gas-price --rpc-url$RPC# 查询 chain idcast chain-id --rpc-url$RPC# 获取合约 codecast code 0x合约地址 --rpc-url$RPC余额查询# 查询 ETH 余额单位: weicast balance 0x地址 --rpc-url$RPC# 查询 ETH 余额可读格式单位: ethercast balance 0x地址 --rpc-url$RPC--ether# 查询 ERC20 代币余额cast call 0x代币合约balanceOf(address)(uint256)0x用户地址 --rpc-url$RPC合约方法调用只读 view/pure# totalSupply - 总发行量cast call 0x合约地址totalSupply()(uint256)--rpc-url$RPC# totalAssets - 总资产Vault 类合约常用cast call 0x合约地址totalAssets()(uint256)--rpc-url$RPC# 代币基本信息cast call 0x合约地址name()(string)--rpc-url$RPCcast call 0x合约地址symbol()(string)--rpc-url$RPCcast call 0x合约地址decimals()(uint8)--rpc-url$RPC# 查询授权额度 allowancecast call 0x代币合约allowance(address,address)(uint256)0xowner 0xspender --rpc-url$RPC# 查询存储槽cast storage 0x合约地址 槽位 --rpc-url$RPC# 其他自定义方法cast call 0x合约地址getUserInfo(address)(uint256,uint256)0x用户地址 --rpc-url$RPC部署合约forge create --private-key${OWNER_PRIVATE_KEY}--broadcastsrc/LuLuCoin.sol:LuLuCoin --constructor-args${OWNER_ADDRESS}// 顺序是固定的私钥路径构造函数 // 其他记录 forge init forge compile forgetestforge to-dec 0x0000000000000000000000000000000000000000000000056bc75e2d63100000交易相关查询交易# 查询交易详情cast txtx_hash--rpc-url$RPC# 查询交易回执包含 logs、status、gasUsed 等cast receipttx_hash--rpc-url$RPC# 查询交易回执并显示完整信息cast receipttx_hash--rpc-url$RPC-vvv发送交易# 调用合约方法需要 gascast send 0x合约地址deposit(uint256)1000000000000000000\--private-key$PK\--rpc-url$RPC# 调用合约方法带 ETHcast send 0x合约地址deposit()\--value1ether\--private-key$PK\--rpc-url$RPC# 直接发送 ETHcast send 0x接收地址--value1ether --private-key$PK--rpc-url$RPC# 指定 gas limit 和 gas pricecast send 0x合约地址function()\--private-key$PK\--rpc-url$RPC\--gas-limit200000\--gas-price 20gwei# 使用 nonce 强制替换交易cast send 0x合约地址function()\--private-key$PK\--rpc-url$RPC\--nonce123模拟与估算# 模拟调用不实际发送交易检查是否会 revertcast call 0x合约地址withdraw(uint256)1000000000000000000\--from0x调用者地址\--rpc-url$RPC# 估算 gascast estimate 0x合约地址deposit(uint256)1000000000000000000\--from0x调用者地址\--rpc-url$RPC数据编码/解码# 编码 calldatacast calldatatransfer(address,uint256)0x接收地址1000000000000000000# 编码带签名的 calldatacast calldatapermit(address,address,uint256,uint256,uint8,bytes32,bytes32)\0xowner 0xspender10000000000000000001234567890270xr 0xs# 解码 calldatacast --calldata-decodetransfer(address,uint256)input_data# 解码事件日志cast decode-event--datalog_data--topicstopic0topic1# 解码函数输出cast --abi-decodebalanceOf(address)(uint256)return_data单位转换# hex 转 decimalcast --to-dec 0x1234# decimal 转 hexcast --to-hex4660# ether 转 weicast --to-wei 1ether# 输出: 1000000000000000000# wei 转 ethercast --from-wei1000000000000000000# 输出: 1 ether# gwei 转换cast --to-unit1000000000gwei地址与签名# 私钥转地址cast wallet address --private-key$PK# 签名消息cast wallet signhello world--private-key$PK# 验证签名cast wallet verify--address0x地址--messagehello world--signaturesig# 计算合约创建地址cast compute-address--address0x部署者地址--nonce0实用技巧# 批量操作示例foraddrin0xaaa... 0xbbb... 0xccc...;doecho$addr:$(cast balance $addr --rpc-url $RPC--ether)ETHdone# 监控pending交易cast receipttx_hash--rpc-url$RPC--wait# 获取事件日志通过区块范围cast logs--address0x合约地址 --from-block1000--to-block2000--rpc-url$RPC# 读取单个存储槽cast storage 0x合约地址0--rpc-url$RPC# 读取映射类型存储槽 (hash(key, slot))cast storage 0x合约地址$(cast index address 0x用户地址0)--rpc-url$RPC快速查表需求命令区块号cast block-number --rpc-url $RPCETH 余额cast balance 0x地址 --rpc-url $RPCETH 余额(ether)cast balance 0x地址 --rpc-url $RPC --etherERC20 余额cast call 0x代币 balanceOf(address)(uint256) 0x用户 --rpc-url $RPCtotalSupplycast call 0x合约 totalSupply()(uint256) --rpc-url $RPCtotalAssetscast call 0x合约 totalAssets()(uint256) --rpc-url $RPC代币名称cast call 0x合约 name()(string) --rpc-url $RPC代币符号cast call 0x合约 symbol()(string) --rpc-url $RPC代币精度cast call 0x合约 decimals()(uint8) --rpc-url $RPC授权额度cast call 0x代币 allowance(address,address)(uint256) 0xowner 0xspender --rpc-url $RPC交易详情cast tx hash --rpc-url $RPC交易回执cast receipt hash --rpc-url $RPC发送交易cast send 0x地址 func() --private-key $PK --rpc-url $RPC发送 ETHcast send 0x地址 --value 1ether --private-key $PK --rpc-url $RPCgas 价格cast gas-price --rpc-url $RPCchain idcast chain-id --rpc-url $RPC合约代码cast code 0x合约 --rpc-url $RPC编码 calldatacast calldata func(type) args...解码 calldatacast --calldata-decode func(type) data常见问题1. 返回值是 wei如何转成可读格式# 方法1: 使用 --ether 标志部分命令支持cast balance 0x地址 --rpc-url$RPC--ether# 方法2: 使用 --from-weicast --from-wei$(cast balance 0x地址 --rpc-url $RPC)2. 如何处理大数字# 使用 cast --to-hex 转换大数字cast call 0x合约balanceOf(address)(uint256)0x用户 --rpc-url$RPC|cast --to-dec3. 如何获取 ERC20 转账事件的 logs# Transfer(address from, address to, uint256 value) 事件签名cast logs--address0x代币合约\--topic00xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\--from-block1000\--rpc-url$RPC
企业数字化 ERP 产品动态
相关推荐
原码、反码和补码以及NandGame减法器 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:29:23
cursor vscode 乱码问题 配置是 Cursor(基于 VS Code)用户设置,放到 settings.json 里。 按 Ctrl + Shift + P 输入并选择:Preferences: Open User Settings (JSON) 把下面配置粘进去(和你现有配置合并,不要重复键): {"editor.fontSize": 18,"terminal.integrated.fontFamily&… · 2026/11/6 1:29:23
Coze 数据分析工作流:把抖音与小红书运营数据整理成周报 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:28:23
Akaunting:免费自托管会计软件,三步开张 Akaunting:免费自托管会计软件,三步开张 【免费下载链接】akaunting Online Accounting Software 项目地址: https://gitcode.com/gh_mirrors/ak/akaunting
Akaunting 是一款可以免费自托管的在线会计软件,面向不想买 SaaS 订阅、也不… · 2026/11/6 1:33:23
6步走通 lego 开源贡献:ACME 证书客户端的参与开发指南 6步走通 lego 开源贡献:ACME 证书客户端的参与开发指南 【免费下载链接】lego Lets Encrypt/ACME client and library written in Go 项目地址: https://gitcode.com/gh_mirrors/le/lego
lego 是一个用 Go 编写的 ACME 客户端与库,帮你的站点自动… · 2026/11/6 1:33:23
Rabbitmq Management管理界面介绍 一、Overview
Connections
Channels
Exchanges
Queues and Streams
Admin这些菜单分别对应RabbitMQ的整体状态、客户端连接、消息通道、交换机、队列以及系统管理等功能Rabbitmq中一条完整的消息传递流程通常如下生产者
↓
Connection
↓
Channel
↓
Exchange
↓
Binding
↓
Qu… · 2026/11/6 1:33:23
线性结构:链表(1) /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:33:23
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07
三菱PLC数据采集到数据库的时序设计:Python+MC协议实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11
ASIC主模式RTL设计:状态机与三态驱动的流片级实现 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11
STM32嵌入式C++开发:GDB调试与Renode仿真实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07