我想在 aws s3 上上传一个位于类似main/part1/part2/file.txt
file.txt
的地方,其中part1
和part2
是未知的(这些文件夹总是变化(。 我可以使用命令aws s3 cp ./main s3://mybucket --exclude "*" --include "*.txt" --recursive
做到这一点,但是在我的存储桶中,我将文件位于part1/part2/file.txt
.我希望file.txt
在桶的底部,而不是在part1/part2
里面
鉴于part1
和part2
在不断变化,这可能吗?
for dir1 in $(ls main); do
for dir2 in $(ls main/$dir1); do
aws s3 cp ./main/$dir1/$dir2/ s3://my-bucket --exclude "*" --include "*.txt" --recursive
done
done
upload: main/part1/part2/file.txt to s3://my-bucket/file.txt
upload: main/part11/part22/file2.txt to s3://my-bucket/file2.txt
如果main
一次永远不会包含超过1个子目录(part1
(,并且该子目录一次永远不会包含超过1个子目录(part2
(,则以下内容将起作用:
aws s3 cp ./main/*/*/ s3://my-bucket --exclude "*" --include "*.txt" --recursive
upload: main/part1/part2/file.txt to s3://my-bucket/file.txt