首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Powershell“静默”中运行Powershell脚本

在Powershell“静默”中运行Powershell脚本
EN

Stack Overflow用户
提问于 2015-08-27 19:42:21
回答 2查看 1.2K关注 0票数 0

我的设置:

一个带有菜单的Powershell脚本。选择菜单项后,将运行指定给该菜单项的特定Powershell脚本。我试图让这个第二个Powershell脚本以静默方式运行--主Powershell脚本中没有显示任何内容。

额外好处:我所看到的完整的设置是:

  • 用户运行Powershell脚本
  • 用户选择菜单项(这将执行另一个Powershell脚本)
  • 其他Powershell脚本中的信息不会显示给用户。
  • 执行第二个Powershell脚本后,将向用户显示一行文本,例如:“脚本已成功运行”。

我尝试过的:向每个辅助脚本添加以下代码

代码语言:javascript
复制
$t = '[DllImport("user32.dll")] public static extern bool ShowWindow(int handle, int state);'
add-type -name win -member $t -namespace native
[native.win]::ShowWindow(([System.Diagnostics.Process]::GetCurrentProcess() | Get-Process).MainWindowHandle, 0)

不幸的是,这关闭了主Powershell窗口,这不是我想要的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-27 19:46:02

通过附加固定

代码语言:javascript
复制
| out-null

在副脚本中每一行代码的末尾。

票数 1
EN

Stack Overflow用户

发布于 2015-08-30 01:09:04

您可以将辅助命令作为后台作业运行,并等待它完成。这样,shell中就不会显示输出。

代码语言:javascript
复制
Start-Job -FilePath YourSecondaryScript.ps1 | Wait-Job

如果需要,仍然可以分析作业结果(脚本输出)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32258136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档