有没有一种方法可以在特定位置搜索文件,而不是在整个容器中搜索?我在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云存储的快照。
2条答案
按热度按时间osh3o9ms1#
要在容器内的特定文件夹中搜索blob,请使用
—-prefix
参数并指定文件夹名称。来自文档:
juzqafwq2#
Azure CLI查询特定文件夹
我同意@alex,我在我的环境中复制并得到了预期的结果,如下所示,我遵循了Microsoft文档:
输出:
此外,如果您想在一个文件夹中的所有文件名,您可以用途: