cast
名称
cast - 从你的命令行中舒适地执行 Ethereum RPC 调用。
简介
cast
[options] command [args]
cast
[options] --version
cast
[options] --help
描述
这个程序是一套与以太坊互动并进行转换的工具。
命令
General 命令
cast help 获取 Cast 命令的帮助。
cast completions 生成 shell 自动补全脚本。
Chain 命令
cast chain-id 获取 Ethereum 的链 ID。
cast chain 获取当前链的名称。
cast client 获取当前客户端的版本。
Transaction 命令
cast publish 向网络发布一个原始交易。
cast receipt 获取一个交易的交易收据。
cast send 签署并发布一项交易。
cast call 在不发布交易的情况下对一个账户进行调用。
cast rpc 执行一个原始的 JSON-RPC 请求 [aliases: rp]
cast tx 获得有关交易的信息。
cast run 在本地环境中运行一个已发布的交易,并打印出跟踪。
cast estimate 估算交易的 Gas 成本。
cast access-list 为一个交易创建一个访问列表。
cast logs 按签名或主题获取日志
Block 命令
cast find-block 获取与提供的时间戳最接近的区块编号。
cast gas-price 获取当前 Gas 价格。
cast block-number 获取最新的区块号。
cast basefee 获取一个区块的基础费用。
cast block 获取一个区块的信息。
cast age 获取一个区块的时间戳。
Account 命令
cast balance 获取一个账户的余额,单位为 Wei。
cast storage 获取一个合约的存储槽的原始值。
cast proof 为一个给定的存储槽生成一个存储证明。
cast nonce 获取一个账户的 nonce。
cast code 获取一个合约的字节码。
cast codesize 获取合约的运行时字节码大小。
ENS 命令
cast lookup-address 进行 ENS 反向查询。
cast resolve-name 进行 ENS 查询。
cast namehash 计算一个名字的 ENS namehash。
Etherscan 命令
cast etherscan-source 从 Etherscan 获取合约的源代码。
ABI 命令
cast abi-decode 解码 ABI 编码的输入或输出数据。
cast abi-encode 对给定的函数参数进行 ABI 编码,不包括选择器。
cast 4byte 从 https://sig.eth.samczsun.com 中获取指定选择器的函数签名。
cast 4byte-decode 使用 https://sig.eth.samczsun.com 对 ABI 编码的 calldata 进行解码。
cast 4byte-event 从 https://sig.eth.samczsun.com 中获取 topic 0 的事件签名。
cast calldata ABI 编码一个带参数的函数。
cast calldata-decode 解码 ABI 编码的输入数据。
cast pretty-calldata 漂亮地打印 Calldata。
cast selectors 从字节码中提取函数选择器和参数
cast upload-signature 将指定的签名上传到 https://sig.eth.samczsun.com.
Conversion 命令
cast format-bytes32-string 将一个字符串转换成 bytes32 编码。
cast from-bin 将二进制数据转换为十六进制数据。
cast from-fix 将一个定点数转换成一个整数。
cast from-utf8 将 UTF8 文本转换为十六进制。
cast from-wei 将 wei 转换为 ETH 数量
cast parse-bytes32-address 从 bytes32 编码中解析出校验和地址。
cast parse-bytes32-string 从 bytes32 编码中解析出一个字符串。
cast to-ascii 将十六进制数据转换为ASCII字符串。
cast to-base 将一个进制底数转换为其它底数。
cast to-bytes32 右移十六进制数据至 32 字节。
cast to-dec 将一个基数的数字转换为十进制
cast to-fixed-point 将一个整数转换成一个定点数。
cast to-hex 将一个基数的数字转换为另一个基数
cast to-hexdata 将输入规范化为小写,0x- 前缀的十六进制。
cast to-int256 将一个数字转换为十六进制编码的 int256。
cast to-rlp 对十六进制数据或十六进制数据数组进行 RLP 编码
cast to-uint256 将一个数字转换成十六进制编码的 uint256。
cast to-unit 将一个 eth 单位转换为另一个单位。 (ether, gwei, wei).
cast to-wei 将 eth 金额转换为 wei 单位。
cast shl 进行左移操作。
cast shr 进行右移操作。
Utility Commands
cast address-zero 打印零地址.
cast sig 获取一个函数的选择器。
cast sig-event 从事件字符串生成事件签名。
cast keccak 使用 keccak-256 对任意数据进行哈希。
cast compute-address 从给定的 nonce 和部署者地址计算合约地址。
cast create2 使用 CREATE2 生成确定性合约地址。
cast interface 从一个给定的 ABI 生成一个 Solidity 接口。
cast index 计算集合中条目的存储插槽位置。
cast concat-hex 串接十六进制字符串。
cast max-int 获取 int256 最大值。
cast min-int 获取 int256 最小值。
cast max-uint 获取 uint256 最大值。
cast to-check-sum-address 将一个地址转换为校验过的格式 (EIP-55).
Wallet Commands
cast wallet 钱包管理实用工具。
cast wallet new 创建一个新的随机密钥对。
cast wallet address 将一个私钥转换为一个地址。
cast wallet sign 签署消息。
cast wallet vanity 生成一个虚构的地址。
cast wallet verify 验证一个信息的签名。
可选
Special 选项
-V
--version
打印版本信息并退出。
Common 选项
-h
--help
输出帮助信息。
例子
-
在一个合约上调用一个函数。
cast call 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 \ "balanceOf(address)(uint256)" 0x...
-
解码原始的 calldata。
cast calldata-decode "transfer(address,uint256)" \ 0xa9059cbb000000000000000000000000e78388b4ce79068e89bf8aa7f218ef6b9ab0e9d0000000000000000000000000000000000000000000000000008a8e4b1a3d8000
-
编码 calldata:
cast calldata "someFunc(address,uint256)" 0x... 1
BUGS
issues 请见 https://github.com/foundry-rs/foundry/issues 。