【发布时间】:2014-09-01 09:43:06
【问题描述】:
我在使用以下代码时遇到 Powershell 无法跨服务器复制最新文件的问题。
$dir="\\MyServer\SQLBackups\SQL Backup*.bak"
$FileLocation = "E:\SQLRestore\SQL Backup Latest.bak"
If (Test-Path $FileLocation){
Remove-Item $FileLocation
}
If (Test-Path $dir){
$latest = Get-ChildItem -Path $dir | Sort-Object CreationTime -Descending | Select-Object -First 1
Copy-Item -Path "$latest" -Destination $FileLocation
}
代码应找到带有前缀“SQL Backup”的最新 .bak 文件并将其传输到本地。
这个过程运行了一个多月,服务器或过程都没有变化,突然传输时间从 5 分钟下降到 3 秒,并且正在传输相同的文件。
非常感谢
【问题讨论】:
-
我们无法测试您的文件,
Get-ChildItem -Path $dir | Sort-Object CreationTime -Descending的输出是什么?是否有人更改了 sql server 上的备份扩展名?
标签: powershell get-childitem copy-item