IPFS(二)IPFS指令集(中文介紹)

今天我們介紹一下IPFS指令集,幫助我們在開發過程中使用。
1、ipfs

用法 ipfs - 全球p2p默克爾有向無環圖文件系統。
使用範例 ipfs [–config=| -c] [–debug= | -D] [–help=] [-h=][–local= | -L] [–api=]

選項

參數表示 參數類型 介紹
-c, --config string 配置文件路徑
-D, --debug bool 以debug模式操作,缺省爲false
–h bool 展示精簡版的命令幫助文檔,缺省爲false
-L, --local bool 在本地運行命令,缺省爲false
–api string 使用具體的API實例(缺省爲/ip4/127.0.0.1/tcp/5001)

子命令
基本命令

命令 介紹
init 初始化IPFS本地配置
add < path > 添加一個文件到IPFS
cat 展示IPFS對象數據
get 下載IPFS對象
ls 從一個對象中列出鏈接
Refs 從一個對象中列出鏈接哈希

數據結構命令

命令 介紹
block 與數據存儲中的原始塊交互
object 與原始DAG節點交互
files 將對象抽象爲unix文件系統,並與對象交互
dag 與IPLD文件交互(實驗中)

高級命令

命令 介紹
daemon 開啓一個開始運行的後臺進程
mount 掛載一個IPFS只讀的掛載點
resolve 解析任何類型的名字
name 發佈並解析IPNS名字
key 創建並列出IPNS名字密鑰對
dns 解析DNS鏈接
pin 將對象鎖定到本地存儲
repo 操縱IPFS倉庫
stats 各種操作狀態
filestore 管理文件倉庫(實驗中)

網絡命令

命令 介紹
id 展示IPFS節點信息
bootstrap 添加或刪除引導節點
swarm 管理p2p網絡連接
dht 請求有關值或節點的分佈式哈希表
ping 測量一個連接的延遲
diag 打印診斷信息

工具命令

命令 介紹
config 管理配置
version 展示IPFS版本信息
update 下載並應用go-ipfs更新
commands 列出所有可用命令

使用“ipfs <命令> --help”來了解關於每個命令的詳細信息。

IPFS在本地文件系統中一個倉庫,其默認位置爲~/.ipfs,可以通過設置環境變量IPFS_PATH改變倉庫位置:

export IPFS_PATH=/path/to/ipfsrepo
EXIT STATUS

命令行將以下面的兩者之一結束:
·0 成功執行 ·1 失敗
使用“ipfs <子命令> –help”獲得關於每個命令的更多信息。

2、ipfs add
用法 ipfs add … - 添加一個文件或目錄到IPFS。

使用範例

ipfs add [–recursive |-r] [–quiet | -q] [–quieter | -Q] [–silent]
[–progress | -p] [–trickle |-t] [–only-hash | -n]
[–wrap-with-directory | -w] [–hidden | -H] [–chunker=| -s]
[–pin=false] [–raw-leaves] [–nocopy] [–fscache] [–]

參數 < path >… - 要添加到ipfs的文件的路徑。

參數標識 參數類型 介紹
-r, --recursive bool 遞歸添加目錄路徑。缺省爲false
-q, --quiet bool 最少化打印輸出
-Q, --quieter bool 只打印最終哈希
–silent bool 不打印任何輸出
-p, --progress bool 以數據流方式處理數據
-t, --trickle bool 使用滴式DAG格式生成DAG
-n, --only-hash bool 僅分塊和哈希,不寫入磁盤
-w, --wrap-with-directory bool 用目錄對象包裹文件
-H, --hidden bool 包括隱藏的文件。只有遞歸添加時有效
-s, --chunker string 指定分塊算法
–pin bool 添加時將對象綁定到本次存儲,缺省開啓
–raw-leaves bool 使用原始塊作爲葉子節點。(實驗中)
–nocopy bool 通過文件倉庫添加文件。(實驗中)
–fscache bool 在文件倉庫中檢查與現存在的區塊。(實驗中)

描述

將 < path >中的內容添加到IPFS。使用-r添加目錄。注意:目錄是遞歸添加的,以便於形成IPFS默克爾有向無環圖。

包裹的選項,“-w”,將文件包裹到一個目錄裏。這個目錄只含有被添加的這些文件,這意味着文件保留其本身的文件名,例如。

ipfs add demo.txt
added QmdWNvCsLUidQkNaxAdTbZPenxhXbwFVNVL8BiCQF24JyD demo.txt
 686 B / ? [---=-------------------------------------------------------------------------------------------------------------------------------------] 
ipfs add demo.txt -w
added QmdWNvCsLUidQkNaxAdTbZPenxhXbwFVNVL8BiCQF24JyD demo.txt
added QmRnzLzwfmqms9K87iU3eLcCqfLFtQvcaF5JtwxKsyH8Ru
 686 B / ? [---=-------------------------------------------------------------------------------------------------------------------------------------] 

你現在可以通過目錄的方式查看這個文件:

ipfs ls QmRnzLzwfmqms9K87iU3eLcCqfLFtQvcaF5JtwxKsyH8Ru
//顯示文件hash及文件名
QmdWNvCsLUidQkNaxAdTbZPenxhXbwFVNVL8BiCQF24JyD 686 demo.txt

通過ipfs cat 訪問這文件

ipfs cat QmdWNvCsLUidQkNaxAdTbZPenxhXbwFVNVL8BiCQF24JyD
//顯示文件爲
hello word!
demo file

3、ipfs bitswap
3.1、ipfs bitswap

用法 ipfs bitswap - 與bitswap代理交互。
使用範例 ipfs bitswap

子命令

參數標識 介紹
ipfs bitswap ledger < peer > 向一個節點展示目前的賬本
ipfs bitswap stat 在bitswap代理商展示一些診斷信息
ipfs bitswap unwant < key >… 從你的需求列表上移除一個給定的區塊
ipfs bitswap wantlist 展示目前在需求列表上的區塊

使用“ipfs bitswap <子命令> –help”來查看關於每個命令的更多信息。

3.2、ipfs bitswap ledger

用法 ipfs bitswap ledger - 向一個節點展示目前的賬本。
使用範例 ipfs bitswap ledger[–]
參數 - 要檢查的賬本的PeerID(B58)
描述
bitswap決策引擎會追溯IPFS節點間字節交換的數量,並將這些信息存儲爲賬本集。這個命令打印與給定節點相關的賬本。
3.3、ipfs bitswap stat
用法 ipfs bitswap stat -在bitswap代理上展示診斷信息。
使用範例 ipfs bitswap stat

3.4、ipfs bitswap unwant

用法 ipfs bitswap unwant … - 從你的需求列表中移除一個給定的區塊。
使用範例 ipfs bitswap unwant[–] …
參數 … - 需要從需求列表中移除的Key(s)

3.5、ipfs bitswap wantlist

用法 ipfs bitswapwantlist - 展示目前在需求列表中的區塊。 使用範例 ipfs
bitswap wantlist [–peer=| -p] 選項 -p, --peer string
-指定展示針對哪個節點的需求列表,默認爲自己。 描述 打印目前本地節點在bitswap需求列表中的所有區塊。

4、ipfs block
4.1、ipfs block

用法 ipfs block - 與原始IPFS區塊交互。
使用範例 ipfs block
參數 - 要檢查的賬本的PeerID(B58)。
描述 “ipfs block”是一個操縱原始IPFS區塊的管道命令。
從stdin讀取或寫入到stdout,並且< key>是一個base58編碼的多重哈希。

子命令

命令 介紹
ipfs block get < key> 獲取一個原始IPFS區塊
ipfs block put < data> 將輸入存儲爲IPFS區塊
ipfs block rm < hash> … 移除IPFS區塊
ipfs block stat < key> 打印關於一個原始IPFS區塊的信息

使用“ipfs block <子命令> –help”獲取更多關於每個命令的信息。

4.2、ipfs block get

用法
ipfs block get - 獲取原始IPFS區塊。
使用範例
ipfs block get [–] < key>
參數
< key> - 要獲取的塊的base58哈希。
描述
“ipfs block get”是一個操縱原始IPFS區塊的管道命令。它將輸出打印到stdout,並且是一個base58編碼的哈希。

4.3、ipfs block put

用法
ipfs block put - 將輸入存儲到IPFS區塊中。
使用範例
ipfs block put[ – format=< format> | -f ] [ --mhtype=] [–mhlen=][–]< data>
參數
< data> - 要存到IPFS區塊中的數據。

選項

參數標識 參數類型 介紹
-f, --format string 要創建的區塊的cid格式,缺省爲v0
–mhtype string 多重哈希函數,缺省爲sha2-256
–mhlen int 多重哈希長度,缺省爲-1

描述
“ipfs block put”是一個操縱原始IPFS區塊的管道命令。它從stdin中讀取數據,並且是一個base58編碼的多重哈希。

4.4、ipfs block rm

用法
ipfs block rm …- 移除IPFS區塊。
使用範例
ipfs block rm [ --force| -f] [–quiet | -q] [–] < hash>…
參數
< hash>… - 要移除的區塊的base58多重哈希。

選項

參數標識 參數 介紹
-f, --force bool 忽視不存在的區塊,缺省爲false.
-q, --quiet bool 最少化的寫輸出,缺省爲false

描述
“ipfs blockrm”是一個操縱原始IPFS區塊的管道命令。它以base58編碼的多重哈希的列表爲輸入移除區塊

4.5、ipfs block stat

用法 ipfs block stat - 打印一個IPFS區塊的原始信息。
使用範例 ipfs
block stat [–]< key> 參數 < key> - 要查看信息的區塊的base58編碼。
描述 “ipfs block stat”是一個操縱原始IPFS區塊的管道命令。它向stdout中輸出以下信息:
· Key - base58編碼的多重哈希。
· 大小 - 區塊的大小(以字節爲單位)。

5、ipfs bootstrap
5.1、ipfs bootstrap

用法 ipfs bootstrap - 展示會編輯引導節點列表。
使用範例 ipfs bootstrap
描述 在無參數條件下執行“ipfs bootstrap”等價於執行“ipfs bootstrap list”。

子命令

命令 介紹
ipfs bootstrap add []… 向引導節點列表中添加節點
ipfs bootstrap list 展示列表中引導節點
ipfs bootstrap rm []… 從引導節點列表中移除節點

使用“ipfs bootstrap <子命令> --help”來查看關於每條命令的詳細信息。

5.2、ipfs bootstrap add

用法 ipfs bootstrap add []…- 向引導節點列表中添加節點。
使用範例 ipfs bootstrap add[–default] [–] […]
參數 [< peer>]… -要加入引導節點列表的節點(以“<多重地址>/<節點ID>”的格式)。
選項 --default bool - 添加默認的引導節點(不推薦,建議使用“default”子命令)
描述 輸出要添加的節點列表(這些節點目前不在引導節點列表裏)。

安全警示:

引導命令操縱包含引導節點地址的“bootstraplist”。
這些是可信節點,通過這些節點可以瞭解網絡中其他節點的狀態。如果你不瞭解修改本列表的風險,請不要修改本列表。
子命令 ipfs bootstrap adddefault - 向引導節點列表中添加默認節點。
使用 “ipfs bootstrap add <子命令> --help”來查看關於每條命令的詳細信息。

5.3、ipfs bootstrap add default

用法 ipfs bootstrap adddefault - 向引導節點列表添加默認節點。
概要 ipfs bootstrap adddefault
描述 輸出被添加的節點列表(這些節點還不在引導節點列表裏)。

5.4、ipfs bootstrap list

用法 ipfs bootstrap list- 打印引導節點列表。
概要 ipfs bootstrap list
描述 節點以“<多重地址>/<節點ID>”的格式打印。

5.5、ipfs bootstrap rm

用法 ipfs bootstrap rm[]… - 從引導節點列表中移除節點。
概要 ipfs bootstrap rm[ --al l] [–] [< peer>…] 參數 [< peer>]… -要被移除的節點(以“<多重地址>/<節點ID>”的格式)。
選項 --all bool - 移除所有引導節點列表中的節點。(不推薦,請使用“all”子命令)。
描述 輸出被移除的節點列表。

安全警示:

引導命令操縱包含引導節點地址的“bootstrapist”。
這些是可信節點,通過這些節點可以瞭解網絡中其他節點的狀態。如果你不瞭解修改本列表的風險,請不要修改本列表。 子命令
ipfs bootstrap rm all- 從引導節點列表中移除所有節點。 使用“ipfs bootstrap rm <子命令>
–help”來查看關於每條命令的詳細信息。

5.6、ipfs bootstrap rm all

用法 ipfs bootstrap rmall - 從引導節點列表中移除所有節點。
概要 ipfs bootstrap rmall
描述 輸出被移除的節點列表。

2019年2月22日 整理於深圳

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章