如何列出IPFS中加载的所有文件对象?

时间:2016-11-10 02:24:06

标签: ipfs

我可以在IPFS中递归添加一堆文件 $ ipfs add -r data /

如何获取[在特定目录中]所有已加载文件对象的列表?与aws s3 listObjects ...

类似

ipfs文件ls命令似乎不是递归的。我知道我可以将API调用一千次,但这似乎不是很有效。

我必须在这里遗漏一些东西。 谢谢, 专利

3 个答案:

答案 0 :(得分:2)

IPFS基于Merkle tree,因此您可以显示根资源下的所有元素。您可以使用:

  • web ui:http://localhost:8080/ipfs/<your_root_resource_hash>
  • graphmd:https://ipfs.io/ipfs/QmNZiPk974vDsPmQii3YbrMKfi12KTSNM7XMiYyiea4VYZ/example#/ipfs/QmRFTtbyEp3UaT67ByYW299Suw7HKKnWK6NJMdNFzDjYdX/graphmd/README.md
  • shell命令:
    • ipfs ls <your_root_resource_hash>
    • ipfs refs -r <your_root_resource_hash>

ipfs files ls的文档

编辑:更重要的是,您的目录名称不会持久保存到IPFS中。您可以访问您的资源,了解其哈希值,即使用ipfs add -r <your_dir>

添加哈希值时获得的哈希值

答案 1 :(得分:0)

如果您对添加了ipfs add -r --nocopy /files之类的本地文件感兴趣,那么您想要的就是

ipfs filestore ls

不幸的是,现在列出的是块而不是整个文件,请参见https://github.com/ipfs/go-ipfs/issues/5293

答案 2 :(得分:0)

您可以使用以下命令:

ipfs filestore ls