Windows静默执行Powershell脚本

这篇博文介绍了如何通过Powershell脚本启动Vmware虚拟机,并且避免弹出烦人的黑窗口。方法是使用hstart程序来隐藏窗口。博主提供了一个具体的示例,即使用hstart配合Powershell执行脚本来启动虚拟机,同时给出了配置参数的参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

博文背景

通过计划任务调用Powershell脚本总是会蹦出黑窗口让人心烦,那么如何简单地解决这个问题呢?

具体操作

这里给个开机自动启动Vmware虚拟机的示例
powershell

& "C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe" "start" `
"D:\VMware\ArchLinux\ArchLinux.vmx";

operation
程序我们选择可以隐藏窗口的hstart传送门是hstart官网

然后添加参数写Powershell可执行程序的路径和脚本路径,在这里我的是

/NOCONSOLE ""C:\Program Files\Powershell\7\pwsh.exe" -File "D:\DoubleWen\pwsh\startvm.ps1""

其他我的配置如下,仅供参考
architect

### 如何执行 PowerShell 脚本 #### 修改执行策略 为了能够顺利运行 `.ps1` 后缀的文件作为 PowerShell 脚本,在默认情况下可能需要调整系统的执行策略。可以通过 `get-executionpolicy` 命令来查看当前的执行策略配置,当返回的结果为 Restricted,则意味着不允许任何脚本执行[^3]。 对于希望解除这一限制的情况,可以采用以下两种方式之一: - **完全不限制**:通过输入并执行命令 `set-executionpolicy -executionpolicy Unrestricted` 来设置执行策略为无限制模式,这将允许所有的本地以及远程下载下来的脚本都能被直接运行。 - **部分限制(推荐)**:考虑到安全性因素,建议使用更保守的方式——即把执行策略设为 RemoteSigned (`set-executionpolicy -executionpolicy RemoteSigned`) 。这种方式仅需确保来自互联网或其他不可信源处获取到的脚本经过数字签名验证即可正常工作,而自己编写的本地脚本则不会受到额外约束。 #### 执行 PowerShell 脚本的方法 一旦确认了合适的执行策略后,就可以按照下面介绍的不同场景下的具体做法来进行实际的操作了: ##### 使用命令行启动器 (适用于 Windows 7 及以上版本) 可以直接双击打开 .ps1 文件关联的应用程序将会是以交互式的 shell 形式呈现出来的 PowerShell 窗口,并自动加载指定路径下的脚本内容开始执行。不过需要注意的是这种方法通常会在前台显示黑色控制台界面直到整个过程结束为止[^2]。 ##### 利用批处理配合 more 命令间接触发 另一种较为隐蔽的做法是在批处理 (.bat 或者 .cmd) 中利用 `more` 工具读取包含有完整 PowerShell 指令序列的文本文件,从而实现无需人工干预就能完成一系列复杂任务的目的。例如: ```batchfile @echo off :: 创建临时PS1文件并将要执行的内容写入其中 echo Write-Host "Hello from PowerShell!" > temp.ps1 :: 使用more命令调用PowerShell解释器去解析刚才创建好的脚本 more temp.ps1 | powershell.exe -noprofile - del /q temp.ps1 ``` 此法的好处在于可以在不弹出明显可见对话框的前提下达成预期效果,尤其适合用于自动化部署或定时作业等场合下隐藏后台进程的存在感[^1]。 ##### 计划任务中的静默执行 如果希望通过 Windows 的任务调度功能定期重复某项特定的工作流,而又不想每次都被突如其来的终端窗口打扰的话,那么应该考虑借助于“计划任务”的力量。在新建/编辑现有条目时记得勾选选项卡里的“无论用户是否登录都要运行”,同时还要取消掉“只在按计划的时间内运行”前打钩的部分以防止意外情况发生。最后一步则是切换至“条件”标签页找到有关电源管理方面的设定将其全部关闭以免影响效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值