about_Operators
主題
about_Operators
簡短描述
說明 Windows PowerShell 支援的運算子。
完整描述
運算子是一種語言項目,可用於命令或運算式中。Windows PowerShell 支援數種運算
子類型,可協助您操控值。
算術運算子
算術運算子 (+、-、*、/、%) 用於計算命令或運算式中的值。您可以使用這些運算子,
將值相加、相減、相乘或相除,以及計算除法運算的餘數 (模數)。
此外,您也可以將算術運算子與字串、陣列及雜湊表搭配使用。加法運算子會串連項目。
乘法運算子則會傳回每個項目的指定份數。
如需詳細資訊,請參閱 about_Arithmetic_Operators。
指定運算子
指定運算子 (=、+=、-=、*=、/=、%=) 用於指派一個或多個值給變數、變更變數中的
值,以及將值附加給變數。此外,您也可以將變數轉換成任何 Microsoft .NET
Framework 資料型別,例如字串、DateTime 或 Process 變數。
如需詳細資訊,請參閱about_Assignment_Operators。
比較運算子
比較運算子 (-eq、-ne、-gt、-lt、-le、-ge) 用於比較數值和測試條件。例如,
您可以比較兩個字串值,判斷兩者是否相等。
比較運算子包括使用規則運算式尋找模式的比對運算子 (-match、-notmatch)、使用
規則運算式變更輸入值的取代運算子 (-replace),以及使用萬用字元 (*) 尋找模式
的相似運算子 (-like、-notlike)。
此外也包括可操控數值中位元模式的位元運算子 (-bAND、-bOR、-bXOR、-bNOT)。
如需詳細資訊,請參閱about_Comparison_Operators。
邏輯運算子
邏輯運算子 (-and、-or、-xor、-not、!) 用於將數個條件陳述式連接成單一複雜條
件式。例如,您可以使用邏輯 -and 運算子來建立具有兩個不同條件的物件篩選器。
如需詳細資訊,請參閱about_Logical_Operators。
重新導向運算子
重新導向運算子 (>、>>、2>、2> 和 2>&1) 用於將命令或運算式的輸出傳送至文字檔
案。重新導向運算子的功能類似 Out-File Cmdlet (不含參數),不僅如此,還能將
錯誤輸出重新導向至指定的檔案。此外,您也可以使用 Tee-Object Cmdlet 來重新導
向輸出。
如需詳細資訊,請參閱about_Redirection。
分割和聯結運算子
-split 和 -join 運算子會分割及合併子字串。-split 運算子會將字串分割為子字
串, 而 -join 運算子會將多個字串串連成單一字串。
如需詳細資訊,請參閱about_Split 和about_Join。
型別運算子
型別運算子 (-is、-isnot、-as) 用於尋找或變更物件的 .NET Framework 型別。
如需詳細資訊,請參閱 about_Type_Operators。
一元運算子
一元運算子用於遞增或遞減變數或物件屬性,以及將整數設為正數或負數。例如,若要
將變數 $a 從 9 遞增為 10,則可輸入 $a++。
特殊運算子
特殊運算子用於執行其他類型的運算子無法執行的工作。例如,特殊運算子可用於執行
命令以及變更數值的資料型別。
& 呼叫運算子
描述:執行命令、指令碼或指令碼區塊。因為呼叫運算子不會進行剖析,所以無法解
譯命令參數。呼叫運算子也稱為「引動運算子」,代表它後面的值是命令。這可讓您
執行儲存在變數中的命令或以字串表示的命令。範例:
& "new cmdlet"
$c = "get-executionpolicy"
& $c
. 屬性取值運算子
描述:存取物件的屬性和方法。範例:
$myString.length
$myString.substring(1,3)
. 以句號表示起點運算子
描述:執行指令碼,讓指令碼中的項目成為呼叫範圍的一部分。如需詳細資訊,請參
閱 about_Scope。範例:
. c:\scripts.sample.ps1
注意:點 (.) 符號也可當做上層目錄符號使用,如下列範例所示:
.\sample.ps1
這個命令會執行 sample.ps1 指令碼,但不會當做呼叫範圍的一部分。
:: 靜態成員運算子
描述:呼叫 .NET Framework 類別的靜態屬性運算子和方法。若要尋找物件的靜態
屬性和方法,請使用 Get-Member Cmdlet 的 Static 參數。範例:
[datetime]::now
.. 範圍運算子
描述:代表特定上下界限之整數陣列中的連續整數。範例:
1..10
10..1
foreach ($a in 1..$max) {write-host $a}
-f 格式運算子
描述:使用字串物件的格式化方法即可格式化字串。在運算子左邊輸入格式字串,運
算子右邊輸入要進行格式化的物件。
範例:
C:\PS> "{0} {1,-10} {2:N}" -f
C:\PS> 1,"hello",[math]::pi
1 hello 3.14
$( ) 子運算式運算子
描述:傳回一個或多個陳述式的結果。若是單一結果,則傳回純量。若是多個結果,
則傳回陣列。範例:
$($x * 23)
$(Get-WMIObject win32_Directory)
@( ) 陣列子運算式運算子
描述:以陣列傳回一個或多個陳述式的結果。如果只有一個項目,陣列將只有一個成
員。範例:
@(Get-WMIObject win32_logicalDisk)
, 運算子
描述:做為二元運算子,逗號會建立陣列。做為一元運算子,逗號會建立只有一個成
員的陣列。請將逗號置於成員之前。範例:
$myArray = 1,2,3
$SingleArray = ,1
請參閱
about_Arithmetic_Operators
about_Assignment_Operators
about_Comparison_Operators
about_Logical_Operators
about_Type_Operators
about_Split
about_Join
about_Redirection