2
我有一個遞歸複製文件夾和文件的程序。 示例:遞歸文件複製期間powershell錯誤檢查
Copy-Item -path "$folderA" -destination "$folderB" -recurse
有時文件不會複製。有沒有辦法「步入遞歸」或更好的方式來做到這一點,所以我可以在這個過程中啓用某種錯誤檢查,而不是在病房之後。可能甚至做一個測試路徑並提示重新複製?
我有一個遞歸複製文件夾和文件的程序。 示例:遞歸文件複製期間powershell錯誤檢查
Copy-Item -path "$folderA" -destination "$folderB" -recurse
有時文件不會複製。有沒有辦法「步入遞歸」或更好的方式來做到這一點,所以我可以在這個過程中啓用某種錯誤檢查,而不是在病房之後。可能甚至做一個測試路徑並提示重新複製?
你可以。例如,以下代碼片段將實際複製並檢查每個文件是否存在可能的錯誤。您也可以在開始時加入自定義代碼以檢查一些先決條件:
get-childItem $source -filter *.* | foreach-object {
# here you can put your pre-copy tests...
copy-item $_.FullName -destination $target -errorAction SilentlyContinue -errorVariable errors
foreach($error in $errors)
{
if ($error.Exception -ne $null)
{
write-host -foregroundColor Red "Exception: $($error.Exception)"
}
write-host -foregroundColor Red "Error: An error occured during copy operation."
}
}
stej - 沒有意識到這與回答問題有關 - 回去並更新它們 - thx – alphadev 2010-09-29 02:54:33