(24)Poweshell中的if條件判斷

在前面的章節中,主要介紹了Powershell的開發工具,變量,運算符以及一些特殊的變量,從本節開始介紹Powershell中的語法結構。shell


  • 本節主要介紹Powershell中的if條件判斷。另外但願讀者從本節開始使用Powershell_ISE進行代命令的輸入與運行,Powershell_ISE提供了界面化的命令輸入,參數提示,自帶補全,debug等特性,很是有利於編寫正確的腳本。
    編程


if可用於根據一個或多個條件測試的結果選擇運行不一樣的命令。與Java、C#、C、C++編程語言中的if的使用方法徹底一致。

if 語句的語法:       less

if (<測試條件1>)
    <語句塊1>}
[elseif (<測試條件2>)
    {<語句塊2>}]
[else
    {<語句塊3>}]

    運行 If 語句時,PowerShell 計算 <測試條件1> 條件表達式的結果是 true 仍是 false。編程語言

  • 若是 <測試條件1> 爲 true,則運行 <語句塊1>,而且 PowerShell 退出if語句。ide

  • 若是 <測試條件1> 爲 false,則 PowerShell 計算 <測試條件2> 條件表達式所指定的條件。工具

  • 若是 <測試條件2> 爲 true,則運行 <語句塊2>,而且 PowerShell 退出 if 語句。開發工具

  • 若是 <測試條件1> 和 <測試條件2> 的計算結果都爲 false,則運行 <語句塊3> 代碼塊,而且PowerShell 退出 if 語句。測試


注意: 在其餘語言中,else if判斷分支中的else和if都是分開的,可是在Powershell中的,兩個單詞是鏈接在一塊兒的,須要特別注意。spa


下面舉例說明if語句的使用。debug

  1. if語句只包含一個判斷分支。

$a=3
if ($a -gt 2)
{
    Write-Host "The value $a is greater than 2."
}

在開始處定義了$a=3,而後對a的進行判斷,顯然條件成立,最後會打印出

"The value $a is greater than 2."

2. 也能夠對其添加else分支,如

$a=3
if ($a -gt 2)
{
    Write-Host "The value $a is greater than 2."
}
else
{
    Write-Host "The value $a is less than or equal to 2, is not created or is not initialized."
}

3. 添加elseif便可實現對條件的屢次判斷。

if ($a -gt 2)
{
    Write-Host "The value $a is greater than 2."
}
elseif ($a -eq 2)
{
    Write-Host "The value $a is equal to 2."
}
else
{
    Write-Host "The value $a is less than 2 or was not created or initialized."
}


  • 總結

if判斷用來判斷條件是否成立,並執行相應的操做。好比判斷知道的文件或者文件夾是否存在,若是存在就寫入文件,若是不存在就建立文件。好比判斷知道的調用是否正確執行等等。

相關文章
相關標籤/搜索