等效于Amazon S3的Bash SFTP批处理文件

问题描述 投票:1回答:1

我需要执行一系列从管道到Amazon S3存储桶的删除文件命令(如下所示)。但是我需要使用Amazon S3的命令行实用程序(v2)逐行执行它们,我不知道该怎么做。因此,SFTP具有内置的批处理文件实用程序,可以从文本文件中读取一系列删除命令,但是S3没有此功能。我最好的选择是什么? (这已从>管道提取到文本文件,我在Mac上使用的是BSD终端。)

aws s3 rm s3://xxx.yyy/FILE_25Min_PGM_05-11-2020.mp3
aws s3 rm s3://xxx.yyy/FILE_25Min_PGM_05-12-2020.mp3
aws s3 rm s3://xxx.yyy/FILE_25Min_PGM_05-13-2020.mp3
aws s3 rm s3://xxx.yyy/FILE_25Min_PGM_05-14-2020.mp3
aws s3 rm s3://xxx.yyy/FILE_25Min_PGM_05-15-2020.mp3
bash amazon-s3 rm bsd
1个回答
0
投票

这是解决方案:| awk'{system(“ aws s3 rm s3://xxx.yyy/” $ 4)}

$ 4是包含文件名的字段。在AWK手册中并不是很清楚,这将有效地运行一个“循环”,不仅在指定的字段上每行输出一个命令,而且每行输出一个系统命令。如果您有想要在其上运行系统命令的文本文件列表或通过管道传输到AWK的文件列表,此功能非常强大。

© www.soinside.com 2019 - 2024. All rights reserved.