指令碼環境
在此單元中,您將了解可用來管理 Azure 資源的命令列殼層。 我們將複習幾個概念,這有助於您依據需求選擇最適合的命令列殼層。
什麼是命令列殼層?
命令列殼層是以文字為基礎的程式,可指示作業系統執行動作。
Bash、PowerShell、Windows PowerShell 和 cmd.exe
都是殼層環境。 您的殼層環境不僅會決定您可以使用哪些工具,也會變更您的命令列體驗。
Bash
Bash 是一種命令列解譯器和殼層指令碼語言。 Bash 可在 Linux 和 macOS 上執行。 Bash 也可透過 Windows 子系統 Linux 版 (WSL),在 Azure Cloud Shell 中和 Windows 上使用。
PowerShell
PowerShell 是一個跨平台工作自動化解決方案,由命令列殼層、指令碼語言,以及組態管理架構所組成。 PowerShell 可在 Windows、Linux 和 macOS 上執行。 PowerShell 也可在 Azure Cloud Shell 中使用。
Azure Cloud Shell
Azure Cloud Shell 是一種託管殼層環境,可在容器中執行 Linux。 Cloud Shell 提供兩種命令列殼層:
- 預先安裝 Azure CLI 的 Bash
- 預先安裝 Azure PowerShell 和 Azure CLI 的 PowerShell
Cloud Shell 可在網頁瀏覽器中存取,並且與 Windows 終端機和 Visual Studio Code (VS Code) 整合。
支援的殼層環境
下表列出每個 Azure 命令列工具支援的殼層。 在此表格中:
- 圖示表示命令行工具是指定殼層中的
supported
。 - 圖示表示命令行工具是指定殼層中的
not supported
。
殼層環境 | Azure CLI | Azure PowerShell | Bicep | Terraform |
---|---|---|---|---|
Bash | ||||
PowerShell | ||||
Windows PowerShell | ||||
Azure Cloud Shell | ||||
cmd.exe |
Azure CLI 具有安裝程式,使其命令在所有的五個殼層環境中都可執行。
Azure PowerShell 是封裝為 PowerShell 模組的一組 Cmdlet,名為 Az
。 這並不是可執行檔。
您必須使用 PowerShell 或 Windows PowerShell,在 Az
PowerShell 模組中執行命令。
PowerShell 是使用 .NET Core 作為執行階段的獨立安裝,因此可以安裝在 Windows、Linux 和 macOS 上。 Windows PowerShell 是預先安裝於 Windows 作業系統的指令碼環境殼層。
您可以使用 PowerShell 或 Bash 管理您的 Azure 資源。 最佳做法是撰寫特定殼層的指令碼,因為 PowerShell 和 Bash 的語法元素有所差異。 例如,對於行接續字元,Bash 會使用反斜線 (\
),PowerShell 則會使用倒引號 (`
)。 殼層環境中的差異不會變更 Azure CLI 和 Azure PowerShell 的運作方式。 不過,其確實會變更您的命令列體驗。