我在s3存储桶中有很多文件,我想要复制那些开始日期为2012的文件。以下命令会复制所有文件。
aws s3 cp s3://bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive --include "201502_nts_*.xlsx"
答案 0 :(得分:20)
您可能希望在包含过滤器之前添加“--exclude”标志。
AWS CLI使用过滤器“--include”将其包含在您现有的搜索中。由于返回了所有文件,因此在包含2015 * .xlsx之前,您需要先排除所有文件。
如果您希望文件的格式为“201502_nts _ *。xlsx”,则可以运行aws s3 cp s3://bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive --exclude * --include "201502_nts_*.xlsx"
答案 1 :(得分:5)
我必须在--exclude *
通配符周围添加引号,所以它看起来像:
aws s3 cp s3://bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive --exclude "*" --include "201502_nts_*.xlsx"
答案 2 :(得分:0)
经过多轮检查并从bsnchan获得帮助后,我可以在aws s3 cli中使用exclude和include命令。请确保正确放置空格。
用于复制特定文件:
aws s3 cp s3://itx-agj-cons-ww-bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive --exclude "*" --include "*%mth_cd%_%source%_all.xlsx"
(注意mth_cd是bat文件中使用的参数)
检查存档文件。
aws s3 ls s3://itx-agj-cons-ww-bp-dev/bp_source_input/ --recursive | FINDSTR "201502_nts_.*.xlsx"
(注意:windows cli,对于unix它将是grep)
非常感谢。