Avatar billede peanut2000 Nybegynder
11. januar 2013 - 15:37 Der er 2 kommentarer og
1 løsning

PowerShell move files mm.

Hej Eksperter

Jeg skal bruge et PowerShell script som flytter filer og foldere som er ældre end 24 time.

Jeg har fundet frem til nedenstående:

----------------
$MoveFrom = "C:\Test1"
$MoveTo = "C:\Test2"
$files = Get-ChildItem -Recurse $MoveFrom | where{$_.lastwritetime -lt (get-date).addhours(-24)}
foreach ($file in $files)
{
$dest = Join-Path -Path $MoveTo -ChildPath (Split-Path $file.FullName -NoQualifier)
  if (!(Test-Path $dest))
  {
    mkdir $dest
  }
  Move-Item $file.FullName -Destination $dest -Force
}
------------------
Problemet med ovenstående er at den opretter folderen test1 i test2. Yderligere opretter den en folder for hver fil og placerer filen i den. Det er ikke meningen.

Scriptet skal flytte alle filer / foldere fra test1\ til test2\ ellers samme placering.

Nogen der kan hjælpe?
Avatar billede peanut2000 Nybegynder
12. januar 2013 - 11:19 #1
Slet ingen der kan hjælpe?
Avatar billede ttp67 Nybegynder
15. februar 2013 - 13:47 #2
Prøv denne  -

Det var primært ifm. $dest at der var lidt småting...

Mvh. Thomas

$MoveFrom = "C:\Test1"
$MoveTo = "C:\Test2"
$files = Get-ChildItem -Recurse $MoveFrom | where{$_.lastwritetime -lt (get-date).addhours(-24) }

write-host fullname: $files.fullname
foreach ($file in $files)
{
$dest = ($file.fullname -replace [regex]::Escape($movefrom), $moveto)

if (!(test-path -path (split-path $dest)))
{
new-item (split-path $dest) -type directory
}
  move-Item $file.fullname  -Destination $dest -Force
}
Avatar billede ttp67 Nybegynder
23. februar 2013 - 22:12 #3
Ovennævnte løser problemet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester