Skip to content

CLI

stcd 是一體化命令行界面 (CLI)。它允許您運行 Daodst 鏈節點、管理錢包並通過查詢和交易與 Daodst 網絡交互。本簡介將解釋如何將 stcd 二進製文件安裝到您的系統上,並通過一些簡單的示例指導您如何使用 stcd。

先決條件

Go

Daodst 是使用 Go 版本 1.20+ 構建的。檢查你的版本:

go version

安裝正確的版本後,通過運行以下命令並將其添加到 shell 啟動腳本中,確認您的 GOPATH 已正確配置:

export PATH=$PATH:$(go env GOPATH)/bin

jq

Daodst 腳本使用 jq 版本 1.6+。檢查你的版本:

jq --version

安裝

您可以從源代碼構建安裝 stcd 二進製文件。

從源代碼構建

使用 git 從源代碼克隆和構建 Daodst。 <tag> 是指 Github 上的發布標籤。最新的Daodst 版本

git clone https://github.com/daodst/blockchain.git
cd blockchain
git fetch
git checkout <tag>
make install

安裝完成後,檢查 stcd 二進製文件是否已成功安裝:

stcd version

📣 提示: 如果返回 stcd: command not found 錯誤消息,請確認您已正確配置 Go

運行 Daodst 節點

要熟悉 Daodst,您可以運行一個本地區塊鏈節點來生成塊並公開 EVM 和 Cosmos 端點。這允許您在本地部署智能合約並與之交互或測試核心協議功能。

通過在存儲庫的基目錄中執行 local_node.sh 腳本來運行本地節點:

./local_node.sh

該腳本存儲節點配置,包括 ~/.tmp-stcd/config/config.toml 下的本地默認端點。 如果您之前運行過該腳本,該腳本允許您覆蓋現有配置並啟動一個新的本地節點。

節點運行後,您將看到它在本地 Daodst 區塊鏈中驗證和生成塊:

12:59PM INF executed block height=1 module=state num_invalid_txs=0 num_valid_txs=0 server=node
# ...
1:00PM INF indexed block exents height=7 module=txindex server=node

有關如何自定義本地節點的更多信息,請轉到 單節點 頁面。

使用 stcd

安裝 stcd 二進製文件後,您可以使用以下命令運行命令:

stcd [command]

還有一個 -h, --help 命令可用

stcd -h

可以同時維護多個節點配置。要指定配置,請使用 --home 標記。在以下示例中,我們將使用位於~/.tmp-stcd的本地節點的默認配置。

管理錢包

您可以使用 stcd 二進製文件來管理您的錢包,以存儲私鑰並通過 CLI 簽署交易。要查看所有密鑰,請使用:

stcd keys list \
--home ~/.tmp-stcd \
--keyring-backend test

# Example Output:
# - address: dst19xnmslvl0pcmydu4m52h2gf0std5ee5pfgpyuf
#   name: dev0
#   pubkey: '{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"AzKouyoUL0UUS1qRUZdqyVsTPkCAFWwxx3+BTOw36nKp"}'
#   type: local

您可以使用 $NAME 生成一個新的密鑰/助記符:

stcd keys add [name] \
--home ~/.tmp-stcd \
--keyring-backend test

將您的 daodst 密鑰導出為以太坊私鑰用於 [Metamask] 例如):

stcd keys unsafe-export-eth-key [name] \
--home ~/.tmp-stcd \
--keyring-backend test

有關可用鍵命令的更多信息,請使用 --help 標誌

stcd keys -h

📣 提示: 有關 Keyring 及其後端選項的更多信息,請單擊 此處。 :::

與網絡互動

您可以使用 stcd 在區塊鏈上查詢信息或提交交易。查詢和交易是您通過 Tendermint RPC 發送到 Daodst 節點的請求。

📣 👉 要使用 CLI,您需要為 --node 標誌提供 Tendermint RPC 地址。 在 [Networks]頁面中查找測試網和主網的公開可用地址。

設置網絡配置

在本地設置中,節點設置為tcp://localhost:26657。您可以使用以下方式查看您的節點配置:

stcd config \
--home ~/.tmp-stcd
# Example Output
# {
#   "chain-id": "daodst_7000-1",
#   "keyring-backend": "test",
#   "output": "text",
#   "node": "tcp://localhost:26657",
#   "broadcast-mode": "sync"
# }

您可以通過更改端點來設置節點配置以將請求發送到不同的網絡:

stcd config node [tendermint-rpc-endpoint] \
--home ~/.tmp-stcd

此處 了解更多節點配置。

查詢

您可以使用stcd query(簡稱stcd q)查詢區塊鏈上的信息。按其查看賬戶餘額 存儲在銀行模塊中的地址,使用:

stcd q bank balances [adress] \
--home ~/.tmp-stcd
# # Example Output:
# balances:
# - amount: "99999000000000000000002500"
#   denom: dst

要查看其他可用的查詢命令,請使用:

# for all Queries
stcd q

# for querying commands in the bank module
stcd q bank

交易

您可以使用stcd tx向網絡提交交易。這在一個命令中創建、簽名和廣播 tx。要使用 bank 模塊將令牌從密鑰環中的帳戶發送到另一個地址,請使用:

stcd tx bank send [from_key_or_address] [to_address] [amount] \
--home ~/.tmp-stcd \
--fees 50000000000dst \
-b block

# Example Output:
# ...
# txhash: 7BA2618295B789CC24BB13E654D9187CDD264F61FC446EB756EAC07AF3E7C40A

要查看其他可用的事務命令,請使用:

# for all transaction commands
stcd tx

# for Bank transaction subcommands
stcd tx bank

現在您已經了解瞭如何運行 Daodst 網絡並與之交互的基礎知識,請轉到 配置 進行進一步的自定義。