Я использую AWS CLI для копирования файлов из ведра S3 в моей машине R с помощью команды, как показано ниже:Как использовать AWS CLI скопировать только файлы в S3 ведро, которые соответствуют заданному шаблону строки
system(
"aws s3 cp s3://my_bucket_location/ ~/my_r_location/ --recursive --exclude '*' --include '*trans*' --region us-east-1"
)
Работает так, как ожидалось, т.е. копирует все файлы в my_bucket_location, которые имеют «транс» в имени файла в этом месте.
Проблема, с которой я столкнулась, заключается в том, что у меня есть другие файлы с похожими соглашениями об именах, которые я не хочу импортировать на этом этапе. В качестве примера, в списке ниже, я только хочу, чтобы скопировать первые два файла, а не последние два:
File list
trans_120215.csv
trans_130215.csv
sum_trans_120215.csv
sum_trans_130215.csv
Если я использую регулярное выражение, я мог бы сделать его более конкретным, как "^trans_\\d+"
принести в только первые два файлов, но это не представляется возможным с помощью AWS CLI. Итак, мой вопрос заключается в способе более сложного сопоставления шаблонов с использованием AWS CLI, как показано ниже?
system(
"aws s3 cp s3://my_bucket_location/ ~/my_r_location/ --recursive --exclude '*' --include '^trans_\\d+' --region us-east-1"
)
Пожалуйста, обратите внимание, что я могу использовать только информацию о файле, о котором идет речь, то есть, что я хочу, чтобы импортировать файл с рисунком "^trans_\\d+"
, я не могу использовать тот факт, что другие нежелательные файлы содержат sum_ в начале , потому что это только пример, могут быть другие файлы с похожими именами, такими как «check_trans_120215.csv».
Я рассмотрел другие альтернативы, как показано ниже, но в надежде, что есть способ, чтобы настроить команду копирования, чтобы не идти вниз либо из этих маршрутов:
- риэлторами все элементы в ведре> с помощью регулярных выражений в R для указать файлы, которые я хочу> только импортировать эти файлы
- Сохранение команды копирования, как это> удалить ненужные файлы на R машине после копирования
ах, это позор. Спасибо за информацию –