Массовые файлы AWS S3 существуют проверки?

Мой подход заключается в том, чтобы отсканировать строку и дать указателям указать каждый символ после разделителей (и первого символа), в то же время назначить появления разделителя в строке на «\ 0». Сначала сделайте копию исходной строки (поскольку она является константой), затем получите количество расколов путем сканирования, чтобы передать ее параметру указателя len . После этого наведите указатель на первый указатель на указатель строки копирования, затем сканируйте строку-копию: однажды встретите разделитель, назначьте его «\ 0», поэтому предыдущая строка результата будет завершена, и укажите следующий указатель строки результата на следующий указатель символов.

char** split(char* a_str, const char a_delim, int* len){
    char* s = (char*)malloc(sizeof(char) * strlen(a_str));
    strcpy(s, a_str);
    char* tmp = a_str;
    int count = 0;
    while (*tmp != '\0'){
        if (*tmp == a_delim) count += 1;
        tmp += 1;
    }
    *len = count;
    char** results = (char**)malloc(count * sizeof(char*));
    results[0] = s;
    int i = 1;
    while (*s!='\0'){
        if (*s == a_delim){
            *s = '\0';
            s += 1;
            results[i++] = s;
        }
        else s += 1;
    }
    return results;
}
2
задан dnk.nitro 16 January 2019 в 21:13
поделиться

2 ответа

Если вы просто проводите общий аудит, вы можете использовать Amazon S3 Inventory для получения полного ежедневного дампа всех ключей объекта и связанных метаданных.

Затем можно написать код для сравнения содержимого файла инвентаризации с записями в БД.

0
ответ дан John Rotenstein 16 January 2019 в 21:13
поделиться

Если вы хотите получить все ключи в определенном сегменте за одну команду, вы можете использовать это.

aws s3api list-objects --bucket <bucket-name> --no-paginate

Когда у вас есть этот список, вы можете обработать его с помощью специального кода.

0
ответ дан Matus Dubrava 16 January 2019 в 21:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: