在不显示窗口的情况下运行 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.