wake-up-neo.net

So wählen Sie eine Datei aus aws s3 mit einem Wild-Zeichen

Ich habe viele Dateien in S3-Bucket und ich möchte die Dateien kopieren, deren Startdatum 2012 ist. Dieser Befehl kopiert die gesamte Datei.

aws s3 cp s3://bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive  --include "201502_nts_*.xlsx"
12
user3858193

Sie können vor dem Include-Filter das Flag "--exclude" hinzufügen.

Die AWS-CLI verwendet den Filter "--include", um ihn in Ihre bereits vorhandene Suche aufzunehmen. Da alle Dateien zurückgegeben werden, müssen Sie zuerst alle Dateien ausschließen, bevor Sie die 2015 * .xlsx einfügen. 

Wenn Sie Dateien nur mit dem Format "201502_nts _ *. Xlsx" wünschen, können Sie aws s3 cp s3://bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive --exclude * --include "201502_nts_*.xlsx" ausführen.

19
bsnchan

Ich musste Zitate um den --exclude *-Platzhalter hinzufügen, damit es so aussieht:

aws s3 cp s3://bp-dev/bp_source_input/ C:\Business_Panorama\nts\data\in --recursive --exclude "*" --include "201502_nts_*.xlsx"
4
RodgerDodger

Nachdem ich viele Kontrollrunden durchgeführt und Hilfe von bsnchan erhalten habe, kann ich den Befehl exclude und include in aws s3 cli verwenden. Bitte stellen Sie sicher, dass Sie die Leerzeichen korrekt eingeben.

für kopierspezifische Datei:

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"

(Hinweis: mth_cd ist ein in der bat-Datei verwendeter Parameter)

Zur Überprüfung des Vorhandenseins von Dateien.

aws s3 ls s3://itx-agj-cons-ww-bp-dev/bp_source_input/ --recursive | FINDSTR  "201502_nts_.*.xlsx"

(Hinweis: Windows cli, für Unix wird es grep)

Danke vielmals.

0
user3858193