2016-02-29 57 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默认继续到每个添加内容语句的末尾 –