Powershell 将项目从数组复制到数组
Powershell Copy item from Array to Array
我想将 DateTime
格式的文件夹复制到名称为 Weekday 的文件夹中。文件夹 D:\TEST15-06-23T2300+0000 应复制到 D:\TEST\Thursday.
Get-ChildItem $Path | Select FullName
D:\TEST15-06-23T2300+0000
D:\TEST16-01-07T2300+0000
Get-ChildItem $Path | ForEach {$_.LastWriteTime.DayOfWeek}
Thursday
Friday
这是我目前拥有的代码,但它不起作用。我错过了一些东西。
$Path = "D:\TEST"
$source = Get-ChildItem $Path | Select FullName
$dest = Get-ChildItem $Path | ForEach {$_.LastWriteTime.DayOfWeek}
foreach ($source in $sources)
{
Copy-Item -Path $source -Destination "D:\TEST2$dest" -Recurse
}
欢迎任何帮助。
您正在使用所有可能的工作日值填充 $dest
。
在 per-item 的基础上检索工作日,当你浏览它们并复制时:
$Sources = Get-ChildItem $Path
foreach($Source in $Sources)
{
$Weekday = $Source.LastWriteTime.DayOfWeek
$Destination = "D:\Test$Weekday"
Copy-Item $Source.FullName -Destination $Destination -Recurse
}
试试这个代码,
它正在工作,我已经测试过:
$Dir = "c:\files"
$Items = Get-ChildItem -Path $Dir
foreach ($Item in $Items)
{
if (!($Item -is [System.IO.DirectoryInfo]))
{
Copy-Item -Path $Item.FullName -Destination .\Desktop$($Item.LastAccessTime.DayOfWeek)
}
}
- 这个目录 c:\files 应该有一个子目录用于一周中的每一天。
我想将 DateTime
格式的文件夹复制到名称为 Weekday 的文件夹中。文件夹 D:\TEST15-06-23T2300+0000 应复制到 D:\TEST\Thursday.
Get-ChildItem $Path | Select FullName
D:\TEST15-06-23T2300+0000
D:\TEST16-01-07T2300+0000
Get-ChildItem $Path | ForEach {$_.LastWriteTime.DayOfWeek}
Thursday
Friday
这是我目前拥有的代码,但它不起作用。我错过了一些东西。
$Path = "D:\TEST"
$source = Get-ChildItem $Path | Select FullName
$dest = Get-ChildItem $Path | ForEach {$_.LastWriteTime.DayOfWeek}
foreach ($source in $sources)
{
Copy-Item -Path $source -Destination "D:\TEST2$dest" -Recurse
}
欢迎任何帮助。
您正在使用所有可能的工作日值填充 $dest
。
在 per-item 的基础上检索工作日,当你浏览它们并复制时:
$Sources = Get-ChildItem $Path
foreach($Source in $Sources)
{
$Weekday = $Source.LastWriteTime.DayOfWeek
$Destination = "D:\Test$Weekday"
Copy-Item $Source.FullName -Destination $Destination -Recurse
}
试试这个代码, 它正在工作,我已经测试过:
$Dir = "c:\files"
$Items = Get-ChildItem -Path $Dir
foreach ($Item in $Items)
{
if (!($Item -is [System.IO.DirectoryInfo]))
{
Copy-Item -Path $Item.FullName -Destination .\Desktop$($Item.LastAccessTime.DayOfWeek)
}
}
- 这个目录 c:\files 应该有一个子目录用于一周中的每一天。