ipfs python API及使用(二)

主要介绍ipfs files命令的主要操作。

ipfs files命令族允许我们像操作unix文件系统一样操作ipfs对象。在ipfs files中包含很多子命令:

ipfs files cp    - 将文件拷贝到mfs中
ipfs files flush []      - 将指定路径的数据刷新到磁盘
ipfs files ls []         - 列表显示本地可变命名空间中的目录
ipfs files mkdir         - 创建目录
ipfs files mv    - 移动文件
ipfs files read          - 读取指定mfs中的文件
ipfs files rm ...        - 删除指定文件
ipfs files stat          - 显示文件状态
ipfs files write   - 写入指定文件系统中的可变文件

 这些之命令在python api中均给予了实现:

def files_cp(self, source, dest, **kwargs);

def files_ls(self, path, **kwargs);

def files_mkdir(self, path, parents=False, **kwargs);

def files_stat(self, path, **kwargs);

def files_rm(self, path, recursive=False, **kwargs);

def files_read(self, path, offset=0, count=None, **kwargs);

def files_write(self, path, file, offset=0, create=False, truncate=False,
                    count=None, **kwargs);

def files_mv(self, source, dest, **kwargs);

 要了解他们具体的实现细节可以把python API代码下载下来进行阅读。

下面讲解他们的具体使用:

import ipfsapi 
c = ipfsapi.connect('127.0.0.1', 5001)

(1)复制:

c.files_cp("/test", "/bla")

当时在进行复制的时候,发现路径怎么也不对,这里的路径需要通过ipfs files mkdir进行创建,是ipfs中的根目录下的,而不是PC上的绝对路径。当时我在编程时这方面几乎没有资料,尝试了很多。 比如可以:ipfs files mkdir /test 创建一个在ipfs根目录下的test然后才可使用ipfs files的操作代码对文件进行操作。

(2)遍历文件:

 c.files_ls("/")

上述代码的含义是遍历ipfs根目录下的文件

 

(3)创建文件夹:

c.files_mkdir("/test")

 通过编程在ipfs根目录下创建一个名为test的文件夹

(4)删除一个文件:

c.files_rm("/bla/file")

(5) 读取一个文件的内容:

c.files_read("/bla/file")

(6) 对一个文件进行写操作:

c.files_write("/test/file", io.BytesIO(b"hi"), create=True)

 在写操作之前需要: import io

(7)移动一个文件:

c.files_mv("/test/file", "/bla/file")

 以上就是ipfs files 的python api的具体操作。

 

 

 

 

 

你可能感兴趣的:(ipfs)