首页 > 解决方案 > 有没有办法在 shell 脚本中迭代 aws s3 存储桶中的文件列表?

问题描述

我正在使用 shell 脚本,我想从 AWS S3 存储桶中获取文件列表,然后根据列表对象中存在的文件数执行 for 循环。

这是我在 shell 脚本中从 S3 存储桶获取文件的代码:

S3_files=$(aws s3 ls s3://s3_bucket_path/ | awk '{print $4}')

S3_files变量将文件列表作为一个完整的字符串,因此无法使用循环进行迭代。该循环只运行一次,因为它将文件列表视为一个字符串,并且只运行一次。下面是我的代码:

for i in "${S3_files[@]}"
do
{
  echo "$i"
}
done

所以,我想了解我们如何根据文件总数使用循环对其进行迭代。任何帮助表示赞赏。非常感谢!

标签: shellamazon-s3

解决方案


推荐阅读