Powershell Copy-Item 不会到达目的地
Powershell Copy-Item Not going to destination
我运行 下面PS 将文件从一个目录移动到另一个目录。我遇到的问题是它不会将项目复制到目的地,而是将它们复制到我从中调用脚本的目录。目的地是我映射的文件共享。
$originalPath1 = "C:\Source\Source\"
$targetFile1 = "Q:\destination\"
Get-ChildItem $originalPath1\* -Include *.xxx, *.yyy, *.ddd, *.eee, *.ttt |
ForEach-Object{ $targetFile1 = $htmPath + $_.FullName.SubString($originalPath1.Length);
New-Item -ItemType File -Path $targetFile1 -Force;
Copy-Item $_.FullName -destination $targetFile1 }
作为'poor mans backup',您可以使用以下代码将匹配模式的文件复制到目标文件夹。
这还将创建原始文件所在的子文件夹结构:
$originalPath = 'C:\Source\Source'
$destination = 'Q:\destination'
$includeThese = '*.xxx', '*.yyy', '*.ddd', '*.eee', '*.ttt'
Get-ChildItem -Path $originalPath -File -Recurse -Include $includeThese |
ForEach-Object {
# create the destination folder
$target = Join-Path -Path $destination -ChildPath $_.DirectoryName.Substring($originalPath.Length)
$null = New-Item -ItemType Directory -Path $target -Force
# copy the file to the target path
$_ | Copy-Item -Destination $target -Force
}
我运行 下面PS 将文件从一个目录移动到另一个目录。我遇到的问题是它不会将项目复制到目的地,而是将它们复制到我从中调用脚本的目录。目的地是我映射的文件共享。
$originalPath1 = "C:\Source\Source\"
$targetFile1 = "Q:\destination\"
Get-ChildItem $originalPath1\* -Include *.xxx, *.yyy, *.ddd, *.eee, *.ttt |
ForEach-Object{ $targetFile1 = $htmPath + $_.FullName.SubString($originalPath1.Length);
New-Item -ItemType File -Path $targetFile1 -Force;
Copy-Item $_.FullName -destination $targetFile1 }
作为'poor mans backup',您可以使用以下代码将匹配模式的文件复制到目标文件夹。
这还将创建原始文件所在的子文件夹结构:
$originalPath = 'C:\Source\Source'
$destination = 'Q:\destination'
$includeThese = '*.xxx', '*.yyy', '*.ddd', '*.eee', '*.ttt'
Get-ChildItem -Path $originalPath -File -Recurse -Include $includeThese |
ForEach-Object {
# create the destination folder
$target = Join-Path -Path $destination -ChildPath $_.DirectoryName.Substring($originalPath.Length)
$null = New-Item -ItemType Directory -Path $target -Force
# copy the file to the target path
$_ | Copy-Item -Destination $target -Force
}