如何获取Azure存储账户中存储的文件元数据
前置说明
你此前使用KQL查询失败的原因是:KQL(Kusto查询语言)仅适用于查询Azure Monitor日志、Log Analytics工作区、Application Insights等监控类数据,无法直接读取存储账户内的实体文件列表,该方案不适用。
两种适合零基础用户的可行方案
方法1:Azure门户图形界面操作(无需代码,上手门槛最低)
- 登录Azure门户,在顶部搜索框输入「存储账户」,进入你要操作的存储账户详情页
- 若查询对象为Blob容器内的文件:在左侧菜单栏「数据存储」分类下选择「容器」,点击进入存放文件的对应容器,页面会直接展示所有文件的名称、大小、最后修改时间等信息,可点击页面顶部「导出到CSV」按钮导出完整列表
- 若查询对象为文件共享内的文件:在左侧菜单栏「数据存储」分类下选择「文件共享」,点击进入对应文件共享,逐层打开目标文件夹即可查看所有文件名,同样支持导出CSV
- 无需额外配置,只要你的账号有对应存储资源的读取权限即可正常操作
方法2:Azure CLI命令行操作(适合批量/自动化获取场景)
- 首先安装Azure CLI工具,安装完成后打开终端执行
az login,按提示完成账号登录 - 执行以下命令获取账号下所有存储账户名称,确认你要操作的目标存储账户名:
az storage account list --query [].name -o tsv - 若要获取Blob容器内的文件名,替换命令中的尖括号内容为实际参数后执行:
az storage blob list --account-name <目标存储账户名> --container-name <目标容器名> --query [].name -o tsv - 若要获取文件共享内的文件名,替换参数后执行:
az storage file list --account-name <目标存储账户名> --share-name <目标文件共享名> --query [].name -o tsv - 命令执行完成后会直接输出所有文件名,你可自行重定向输出内容到本地文本文件保存
注意事项
- 操作前确认你的账号持有目标存储账户的「存储Blob数据读者」或「存储文件数据读者」权限,否则会提示无访问权限
- 如果文件存放在子目录下,在上述CLI查询命令中添加
--prefix <子目录路径>参数,即可仅查询指定目录下的文件列表
内容的提问来源于stack exchange,提问作者han na
相关产品推荐
相关产品推荐

