在不顯示視窗的情況下執行 PowerShell 指令碼

Migel Hewage Nimesha 2023年1月30日 2022年5月16日
  1. 使用 hidden 作為視窗樣式來隱藏 PowerShell 視窗
  2. 使用任務計劃程式隱藏 PowerShell
在不顯示視窗的情況下執行 PowerShell 指令碼

Microsoft 的 PowerShell 是 Windows 作業系統預設提供的工具,使 Windows 使用者能夠使用基於命令列介面和命令的自動化功能。

PowerShell 是一個指令碼工具和自動化工具;因此有時需要應用程式在後檯安靜地執行。通過本文,我們將瞭解如何在後臺靜默執行 PowerShell 應用程式,在後臺執行命令。

你可以將一些第三方工具與 PowerShell 工具結合以實現 PowerShell 的隱藏功能。雖然,有一些簡單的方法可以只使用 PowerShell 來做到這一點。

使用 hidden 作為視窗樣式來隱藏 PowerShell 視窗

隱藏指令碼視窗的一種簡單方法是使用 hidden 型別作為視窗樣式。視窗樣式的 PowerShell 視窗將在開始時短暫顯示,然後在指令碼執行期間隱藏。

我們正在討論的程式碼如下。

PowerShell.exe -windowstyle hidden { Script you want to execute.. }

上述命令的 PowerShell 執行如下圖所示。

PowerShell 執行

輸入後,視窗消失,但應用程式將在後臺執行。如下圖後臺程序所示,PowerShell 作為後臺程序執行。

後臺程序

在這種方法中,使用者最初會看到 PowerShell。因此,它並沒有真正對終端使用者隱藏。即使之前安排了任務,視窗也會彈出並迅速隱藏。

但是,還有其他簡單的方法可以實現 PowerShell 真正隱藏的功能。

使用任務計劃程式隱藏 PowerShell

使用 Windows 的任務計劃程式,你可以安排 PowerShell 指令碼在任務中執行。在那裡,你必須轉到任務並單擊無論使用者是否登入都執行,這根本不會向使用者顯示視窗。

該選項如下所示,你必須在安排任務後選擇第二個單選按鈕。

任務計劃程式

但是,此方法會影響你嘗試使用的某些指令碼的功能。因此,你還可以使用 PowerShell 的第三方工具或社群擴充套件。

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.