繁体   English   中英

azure blob 存储 cli 列表目录

[英]azure blob storage cli list directories

我正在编写一个使用 Azure 存储 CLI 的 PowerShell 脚本。 我正在寻找一种方法来仅列出特定路径下的目录。 我可以使用az storage blob list轻松列出az storage blob list但我希望我可以直接获取目录,而无需对结果进行后处理。 鉴于 Azure blob 存储具有平面文件结构,我不确定这是否可行,但我认为有人可能知道我不知道的一些事情。

谢谢。

您可以使用--delimiter选项来更接近您想要的内容——顶级文件夹(和 blob),但不是嵌套 blob:

# suppress nested blobs
$ az storage blob list -c foo --delimiter '/' --output table 

Name       Blob Type    Content Type             
---------  -----------  ------------------------- 
dir1/
dir2/
dir3/
dir4/
file.txt   BlockBlob    text/plain; charset=utf-8

这会抑制更深层次的所有斑点。 从那里,您可以过滤到“文件夹”,因为文件夹条目的元数据为零,而 blob 则如此。 文件夹条目也以/结尾。 如果您提供查询选项, az CLI 也可以为您过滤:

az storage blob list -c foo --delimiter '/' --query '[].name | [?ends_with(@, `/`)]

[ "dir1/",
  "dir2/",
  "dir3/",
  "dir4/" ]

如前所述,Azure Blob 存储是扁平的。 对于分层文件系统,请查看 Azure 文件存储。

查看 CLI 的快速入门: https : //docs.microsoft.com/en-us/azure/storage/files/storage-how-to-use-files-cli

我最终决定这不是一个真正的选择,因为文件系统是扁平的,而“路径”只是虚拟的。 我决定使用不需要基于这些虚拟目录进行批处理的脚本转向不同的方向。

暂无
暂无

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

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