2016-11-18 31 views
0

我期待修改下面腳本做兩件事情上的if語句:在運行多個命令的if語句

if ($PsCmdlet.ParameterSetName -ieq "DumpCreds") 
{ 
    $ExeArgs = "privilege::debug" 

} 
elseif ($PsCmdlet.ParameterSetName -ieq "DumpCerts") 
{ 
    $ExeArgs = "crypto::cng crypto::capi `"crypto::certificates /export`" `"crypto::certificates /export /systemstore:CERT_SYSTEM_STORE_LOCAL_MACHINE`" exit" 
} 
else 
{ 
    $ExeArgs = $Command 
}` 

它讀取的行 - $exeargs = "privilege::debug",我需要運行和我還需要運行 - $ExeArgs = "sekurlsa::logonpasswords"首先需要運行的權限,然後是登錄口令。

如何在腳本中的if語句中運行2個命令?

+0

你想在一個if塊兩次分配一個值'$ ExeArgs'?這將實現什麼? –

+0

是的,以及priv參數是需要在我可以運行登錄密碼之前設置的一個要求。有沒有辦法做到這一點? –

+0

'$ ExeArgs ='「privilege :: debug」「sekurlsa :: logonpasswords」''? – JosefZ

回答

1

一個if聲明沒有關於你多少命令執行的限制,所以只執行它...

if ($PsCmdlet.ParameterSetName -ieq "DumpCreds") 
{ 
    $ExeArgs = "privilege::debug" 
    $ExeArgs = "sekurlsa::logonpasswords"  
} 
elseif ($PsCmdlet.ParameterSetName -ieq "DumpCerts") 
{ 
    $ExeArgs = "crypto::cng crypto::capi `"crypto::certificates /export`" `"crypto::certificates /export /systemstore:CERT_SYSTEM_STORE_LOCAL_MACHINE`" exit" 
} 
else 
{ 
    $ExeArgs = $Command 
}