Move files to specific directories based on file modified by date.
Hi All,
I’m trying to make sense of 1000’s of photos and I’m looking for something a little different to the year – month standard option.
I’m trying to sort my pictures between specific dates for instance.
For example:
Pics from between 05-01-2000 & 04-02-2000 to be moved to directory ‘Year 1Month 0’
Pics from between 05-02-2000 & 04-03-2000 to be moved to directory ‘Year 1Month 1’
Pics from between 05-03-2000 & 04-04-2000 to be moved to directory ‘Year 1Month 2’
Pics from between 05-04-2000 & 04-05-2000 to be moved to directory ‘Year 1Month 3’
From searching i have found the following script
CmdletBinding(SupportsShouldProcess=$true)]
param (
[Parameter(Mandatory=$true)][string]$SourceDirectory,
[Parameter(Mandatory=$true)][string]$DestinationDirectory,
[Parameter(Mandatory=$true)][string]$ModifiedAfter,
[Parameter(Mandatory=$true)][string]$ModifiedBefore
)
Get-ChildItem -Path $SourceDirectory |
Where-Object {
$_.LastWriteTime `
-gt (Get-Date $ModifiedAfter) `
-and $_.LastWriteTime -lt (Get-Date $ModifiedBefore) } |
ForEach-Object { $_ | Copy-Item -Destination $DestinationDirectory }
You then run it with
.Copy-Files-Modified-Between-Dates `
-SourceDirectory C:Tempall `
-DestinationDirectory C:Tempsubset `
-ModifiedAfter ‘2000-01-05 18:00’ `
-ModifiedBefore ‘2000-02-04’
My question is how can this be made to increment onto the next month automatically or to reference a file for info maybe a csv or text file to say
Pics from between 05-04-2010 & 04-05-2010 to be moved to directory ‘Year 10Month 3’
Hi All,I’m trying to make sense of 1000’s of photos and I’m looking for something a little different to the year – month standard option.I’m trying to sort my pictures between specific dates for instance.For example:Pics from between 05-01-2000 & 04-02-2000 to be moved to directory ‘Year 1Month 0’Pics from between 05-02-2000 & 04-03-2000 to be moved to directory ‘Year 1Month 1’Pics from between 05-03-2000 & 04-04-2000 to be moved to directory ‘Year 1Month 2’Pics from between 05-04-2000 & 04-05-2000 to be moved to directory ‘Year 1Month 3’From searching i have found the following script CmdletBinding(SupportsShouldProcess=$true)]
param (
[Parameter(Mandatory=$true)][string]$SourceDirectory,
[Parameter(Mandatory=$true)][string]$DestinationDirectory,
[Parameter(Mandatory=$true)][string]$ModifiedAfter,
[Parameter(Mandatory=$true)][string]$ModifiedBefore
)
Get-ChildItem -Path $SourceDirectory |
Where-Object {
$_.LastWriteTime `
-gt (Get-Date $ModifiedAfter) `
-and $_.LastWriteTime -lt (Get-Date $ModifiedBefore) } |
ForEach-Object { $_ | Copy-Item -Destination $DestinationDirectory } You then run it with .Copy-Files-Modified-Between-Dates `
-SourceDirectory C:Tempall `
-DestinationDirectory C:Tempsubset `
-ModifiedAfter ‘2000-01-05 18:00’ `
-ModifiedBefore ‘2000-02-04’ My question is how can this be made to increment onto the next month automatically or to reference a file for info maybe a csv or text file to sayPics from between 05-04-2010 & 04-05-2010 to be moved to directory ‘Year 10Month 3’ Read More