我看到“Copy-Item”cmdlet出现奇怪的行为。如果源位置是不存在的本地位置,则看起来cmdlet会出错,但如果源是不存在的网络位置,则完全忽略该位置。
例如
Copy-Item \\server\share\thisdoesnotexist\* -Destination c:\temp -ErrorAction Stop
即使源共享无效,此命令也不会显示任何错误。然而,
Copy-Item c:\thisdoesnotexist\* -Destination c:\temp -ErrorAction Stop
抛出一个看起来像的错误:
Copy-Item : Cannot find path 'C:\thisdoesnotexist' because it does not exist.
At line:1 char:1
+ Copy-Item c:\thisdoesnotexist\* -Destination c:\temp -ErrorAction Stop;
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (C:\thisdoesnotexist:String) [Copy-Item], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.CopyItemCommand
这里发生了什么?我检查了TechNet,但在那里找不到任何谈论此事的内容。我的问题是:
这是预期的吗?
当源网络共享无效时,有没有办法让cmdlet失败?
感谢您的任何指示!