Удаление папок из хранилищ Azure или общих файловых ресурсов старше X дней

Я использую учетные записи хранения Azure и пытаюсь работать с powershell для удаления папок, которые существуют в контейнере (я знаю, что контейнер представляет собой просто двухуровневую иерархию и концепцию больших двоичных объектов, и что папки фактически не существуют).

Помимо неспособности проверить свойства даты / времени папки, на самих BLOB-объектах единственное свойство, которое я могу найти, это "последнее изменение", что в целом нормально для нашей цели, хотя лучше иметь свойство создания. Как я понимаю, единственное решение для этого - создать таблицу и перечислить каждый файл, время и дату его создания? кажется, много работы для этого вопроса.

Я могу перечислить файл из этой папки, поскольку все они скопированы вместе, а затем удалить все большие двоичные объекты, разделяющие корневую "папку", но я бы предпочел знать фактическое время последнего изменения самой папки, чем файлы в ней. Есть ли способ добиться этого? Теперь я не ЗАБЛОКИРОВАН на использование контейнеров хранения Azure, также возможны общие файловые ресурсы, но когда я попробовал это, перечисление папок было возможно, но измененное свойство даты и времени просто не заполнялось по какой-то причине, и это единственное собственность там в стороне от "ETag".

Заранее спасибо.

1 ответ

Насколько я знаю, позволить пользователям определять политики истечения срока действия для больших двоичных объектов непосредственно из хранилища все еще планируется, мы можем найти его в этом отзыве о хранилище Azure.

Если вы хотите удалить "просроченные" папки / файлы с помощью скрипта powershell, вы можете попытаться включить информацию о пути с датой и временем в имена больших двоичных объектов (например, 2017/10/test.txt), а затем составить список и пройти по нему. капли для сравнения datetime часть в имени BLOB с текущей датой и временем, если BLOB старше x дней, удалите его.

Кроме того, если вы не хотите включать информацию о пути с datetime в имена больших двоичных объектов, вы можете попытаться сохранить datetime создания в свойствах или метаданных, а затем вы можете извлечь datetime создания BLOB-объекта из свойств или метаданных и сравнить datetime создания с текущим datetime определить, удалить ли BLOB-объект.

Другие вопросы по тегам