Azure CLI查询特定文件夹

xwmevbvl  于 2023-03-31  发布在  其他
关注(0)|答案(2)|浏览(97)

有没有一种方法可以在特定位置搜索文件,而不是在整个容器中搜索?我在Azure CLI上运行了此查询,但它会在整个容器中搜索特定模式,我面临的问题是过了一段时间,查询冻结了。我试过几种方法,但都不起作用。下面是一个查询,它运行了一个小时,然后给了我一个nextMarker,它不会继续搜索。(我是否最大化了我在Azure上的搜索引用?)请看一下,让我知道你的想法。

container_name=pure3
numResults=1000
marker=---some value----
az storage blob list \
       --account-name $account_name \
       --account-key $key \
       --num-results $numResults \
       --show-next-marker \
       --container-name $container_name \
       --prefix "pure3/fastqs/170707_" \ \
       --marker $marker \
       --query "[[].name, [].nextMarker]" --output yamlc

我有一个Shell脚本可以一个接一个地继续搜索。

#/usr/bin/

./Azure_Search_newQ.sh > out

tail -1 out
line=$(tail -1 out);
echo "Length is:${#line}"
expr=${line:4:${#line}}
echo $expr

head -n -1 out >>Blob_Files
while [ ! -z "$expr" ]
do
        sed "s/FLAG/${expr}/g" Azure_listBlob_wMarker_FLAG.sh > Azure_Search_newQ.sh
        chmod +x Azure_Search_newQ.sh
        ./Azure_Search_newQ.sh > out
        head -n -1 out >>Blob_Files
        line=$(tail -1 out)
        echo "Length is:${#line}"
        expr=${line:4:${#line}}
        echo $expr
done

我试着在24小时后运行代码,并使用上次运行时卡住的nextMarker,结果相同。我试着从2个前一个nextMarker开始运行,它运行得很好,并卡在同一个nextMarker上。
到目前为止,我已经搜索了1076000个文件。
这是Azure云存储的快照。

osh3o9ms

osh3o9ms1#

要在容器内的特定文件夹中搜索blob,请使用—-prefix参数并指定文件夹名称。
来自文档:

juzqafwq

juzqafwq2#

Azure CLI查询特定文件夹
我同意@alex,我在我的环境中复制并得到了预期的结果,如下所示,我遵循了Microsoft文档:

az storage blob list --account-name "name of storage account" --container-name "name of the container" --account-key "RqOU/00Q+p6CRj2kvF/FVb3bP3X+AStV19sEg==" --prefix Nameoffolder/

输出:

此外,如果您想在一个文件夹中的所有文件名,您可以用途:

$x=az storage blob list --account-name "rithwikstorage" --container-name "rithwik" --account-key "RqOU1A6rGSaRWEu42IOVb3bP3X+AStV19sEg==" --prefix EmoFolder/ | ConvertFrom-Json
 $x.name

相关问题