2016-02-29 54 views
0

我想從file1,file2,file3,file4和file5中追加數據到finalfile。如果文件丟失,Powershell複製文件失敗

所以副本將

Copy-Item $file1 $finalfile 
add-content -path $finalfile-value (get-content $file2) 
add-content -path $finalfile-value (get-content $file3) 
add-content -path $finalfile-value (get-content $file4) 
add-content -path $finalfile-value (get-content $file5) 

但是,如果該文件不退出它會給出一個錯誤,所以如何能在情況下,如果某些文件丟失例如文件2丟失,重寫代碼腳本仍然會繼續爲file3向前添加內容。

回答

2

爲什麼不嘗試這樣的事情?

if(Test-Path $file2){ add-content -path $finalfile -value (get-content $file2)} 

Test-Path會測試它是否可以找到目錄/文件並返回true/false。 if語句將在執行add-content命令時發現該文件。如果找不到文件,則if不執行任何操作

1

用try catch或設置$ ErrorActionPreference變量來處理錯誤。

+1

具體添加-ErrorAction默認繼續到每個添加內容語句的末尾 –