繁体   English   中英

使用 fsspec 从 Google Cloud 删除文件

[英]Deleting a file from Google Cloud using fsspec

我目前正在使用fsspec来读取文件并将文件写入我的谷歌云存储桶,代码如下所示:

with fs.open(gcs_file_tmp, "rb") as fp:
    gcs_file_content = fp.read()

现在我想从 GCS 存储桶中删除一个文件,但我似乎找不到它的代码。 阅读此处的文档,似乎有一些基于rm的函数和一些delete函数,但它们似乎不起作用,因为它们不能这样调用fs.rm(...)左右

fs.open()返回fsspec.core.OpenFile实例,具有fs属性。
当您打开 GCS 文件时, fsGCSFileSystem
当您打开本地文件时, fsLocalFileSystem
我知道 fsspec 吸收了文件系统之间的差异,如 class AbstractFileSystem
我们可以调用它的delete()

这样,我们应该再次传递目标文件路径(如果你愿意,我们可以使用path属性)。

# for GCS
f = fsspec.open("gs://bucketHoge/fuga.txt")
f.fs.delete(f.path)

# for local
f = fsspec.open("/tmp/fuga.txt")
f.fs.delete(f.path)

我想知道有没有更好的方法...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM