2016-11-23 41 views
2

错误地调用可执行文件假设我想用&调用继续执行错误。例如:

&$executable

有什么办法,我可以得到这个?

+0

$ erroractionpreference? – 4c74356b41

+0

@ 4c74356b41是的,但'&$可执行文件-erroraction silentlycontinue'将无法正常工作,因为参数正在传递给可执行文件... –

+0

啊,我明白了......。 –

回答

2

设置$ErrorActionPreference全局变量的这一个选项:

SilentlyContinue,因此停止,继续询问,忽略

例如:

$ErrorActionPreference = 'SilentlyContinue' 
&$executable 
3

考虑使用一个函数,该函数复位旧ErrorActionPreference

function Invoke-MyFunctorSilently 
{ 
    param 
    (
     [scriptblock]$func 
    ) 

    $currentEa = $ErrorActionPreference 
    try 
    { 
     $ErrorActionPreference = 'SilentlyContinue' 
     $func.Invoke() 
    } 
    finally 
    { 
     $ErrorActionPreference = $currentEa 
    } 
} 

所以你可以这样调用它:

Invoke-MyFunctorSilently -func { & calc.exe} 
+2

多数民众赞成在整齐,谢谢! – 4c74356b41