dfx 账本
使用 dfx ledger
命令与账本容器交互。
此命令可用于进行从一个容器到另一个容器的 ICP 实用程序代币交易,或使用来自 ICP 的周期为容器充值。
运行 dfx ledger
命令的基本语法是:
dfx ledger [options] [subcommand]
根据您指定的 dfx ledger
子命令,可能会应用其他参数、选项和标志。 有关说明使用 dfx ledger
命令的参考信息和示例,请选择适当的命令。
命令 | 描述 |
---|---|
打印所选身份的账户标识符。 |
|
打印用户的账户余额。 |
|
从 ICP 创建一个容器。 |
|
|
显示指定子命令的帮助信息消息。 |
当有发送交易到循环铸币容器时通知账本。 |
|
使用 ICP 铸造的周期为容器充值。 |
|
将 ICP 从用户转移到目标 Account Identifier。 |
要查看特定子命令的帮助信息,请指定子命令和 --help
标志。
例如,要查看`dfx ledger transfer`的帮助信息,可以运行以下命令:
dfx ledger transfer --help
dfx ledger account-id
使用 dfx ledger account-id
命令显示与当前活动身份关联的帐户标识符。
与您的开发者身份principal的文本表示一样,帐户标识符是从您的私钥派生的,用于在账本容器中表示您的身份。
dfx账本创建容器
使用 dfx ledger create-canister
命令将 ICP代币转换为循环并在 Internet Computer 上注册新的容器标识符。
选项
您可以为 dfx ledger create-canister
命令指定以下参数。
选项 | 说明 |
---|---|
|
指定要铸造成燃料费并存入目标容器的ICP令牌的数量。 您可以将金额指定为最多八 (8) 位小数的数字。 |
|
将 ICP 代币小数单位(称为 e8s)指定为整数,其中一个 e8 是 ICP 代币的最小分区。 例如,1.05000000 是 1 个 ICP 和 5000000 个 e8s。 您可以单独使用此选项,也可以与 |
|
指定交易费用。 默认值为 10000 个 e8s。 |
|
将 ICP 代币指定为整数。 您可以单独使用此选项,也可以与 |
|
指定最高交易费用。 默认值为 10000 个 e8s。 |
例子
要创建具有燃料费的新容器,请通过运行类似于以下的命令从您的分类帐帐户转移 ICP 代币:
dfx ledger --network ic create-canister tsqwz-udeik-5migd-ehrev-pvoqv-szx2g-akh5s-fkyqc-zy6q7-snav6-uqe --amount 1.25
此命令将您为 --amount
参数指定的 ICP 代币数量转换为燃料费,并将燃料费与您指定的principal控制的新容器标识符相关联。
在此示例中,该命令将 1.25 个 ICP 代币转换为燃料费,并将默认身份的principal标识符指定为新容器的控制器。
如果交易成功,账本会记录该事件,您应该会看到类似于以下内容的输出:
Transfer sent at BlockHeight: 20 Canister created with id: "53zcu-tiaaa-aaaaa-qaaba-cai"
您可以通过运行类似于以下的命令为 ICP 令牌和 e8s 指定单独的值来创建新容器:
dfx ledger --network ic create-canister tsqwz-udeik-5migd-ehrev-pvoqv-szx2g-akh5s-fkyqc-zy6q7-snav6-uqe --icp 3 --e8s 5000
dfx 账本通知
使用 dfx ledger notify
命令通知账本有关向燃料费铸币容器发送交易的信息。
仅当 dfx ledger create-canister
或 dfx ledger top-up
成功向账本发送消息,并且在某个区块高度记录了交易,但由于某种原因后续通知失败时,才应使用此命令 .
dfx 账本充值
使用 dfx ledger top-up
命令来充值具有从 ICP 代币铸造的燃料费的容器。
选项
您可以为 dfx ledger top-up
命令指定以下选项。
选项 | 说明 |
---|---|
|
指定要铸造成燃料费并存入目标容器的ICP代币的数量。 您可以将金额指定为最多八 (8) 位小数的数字。 |
|
将 ICP 代币(称为 e8s)的小数单位指定为整数,其中一个 e8 是 ICP 代币的最小单位。 例如,1.05000000 是 1 个 ICP 和 5000000 个 e8s。 您可以单独使用此选项,也可以与 |
|
指定操作的交易费用。 默认值为 10000 个 e8s。 |
|
将ICP代币指定为整数。 您可以单独使用此选项,也可以与 |
|
指定最高交易费用。 默认值为 10000 个 e8s。 |
例子
您可以使用 dfx ledger top-up
命令从您控制的 ICP 代币余额中充值特定容器的周期。
容器标识符必须与能够接收燃料费的燃料费钱包容器相关联。 或者,您可以修改非燃料费钱包容器以使用链接中描述的系统 API 来实现接收燃料费的方法Internet 计算机接口规范。
例如,您可以运行以下命令来为部署在互联网计算机上的燃料费钱包容器充值 1 ICP 价值的燃料费:
dfx ledger --network ic top-up --icp 1 5a46r-jqaaa-aaaaa-qaadq-cai
此命令显示类似于以下内容的输出:
Transfer sent at BlockHeight: 59482 Canister was topped up!
dfx 账本转账
使用 dfx ledger transfer
命令将 ICP 代币从您在账本容器中的帐户地址转移到目标地址。
选项
您可以为 dfx ledger transfer
命令指定以下参数。
选项 | 说明 |
---|---|
|
指定要转移的ICP代币的数量。 可以指定为最多八 (8) 位小数的数字。 |
|
将e8s指定为整数,其中一个e8是ICP令牌的最小分区。 例如,1.05000000 是 1 个 ICP 和 5000000 个 e8s。 您可以单独使用此选项,也可以与 |
|
指定交易费用。 默认值为 10000 个 e8s。 |
|
将ICP指定为整数。 您可以单独使用此选项,也可以与 |
|
指定该交易的数字备忘录。 |
对Motoko使用 dfx ledger transfer
命令将您的一些 ICP 余额发送到另一个已知目的地,使用以下命令:的改动
dfx ledger --network ic transfer dd81336dbfef5c5870e84b48405c7b229c07ad999fdcacb85b9b9850bd60766f --memo 12345 --icp 1
此命令显示类似于以下内容的输出:
Transfer sent at BlockHeight: 59513
然后,您可以使用 dfx ledger --network ic balance
命令检查您的帐户余额是否反映了您刚刚进行的交易。