Skip to content

Instantly share code, notes, and snippets.

@Sam-Martin
Created June 26, 2015 15:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Sam-Martin/d159522571b5e6690816 to your computer and use it in GitHub Desktop.
Save Sam-Martin/d159522571b5e6690816 to your computer and use it in GitHub Desktop.
Get-S3FolderLastModified
function Get-S3FolderLastModified {
param(
[parameter(mandatory=$true)]
[string]$folder,
[parameter(mandatory=$true)]
[string]$bucket,
[parameter(mandatory=$true)]
[string]$region
)
$objects = Get-S3Object -BucketName $bucket -Region $region -KeyPrefix $folder
$folders = $objects | %{(Split-Path $_.key) -replace '\\','/'} | select -Unique
$folders | %{
$folder = $_
$objectsInThisFolder = $objects | ?{$_.key -match "$( [Regex]::Escape($folder))\/[^\/]*$"}
$MostRecentObject = $objectsInThisFolder | Sort-Object LastModified | select -last 1
New-Object psobject -Property @{Folder=$folder;"LastModified"=$MostRecentObject.LastModified}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment