powershell - 如何在调用 Add-PSSnapin 之前检查 PowerShell 管理单元是否已加载

标签 powershell

我有一组 PowerShell 脚本,有时一起运行,有时一次运行一个。每个脚本都需要加载特定的管理单元。

现在每个脚本都在开头调用 Add-PSSnapin XYZ

现在,如果我连续运行多个脚本,后续脚本将抛出:

Cannot add Windows PowerShell snap-in XYZ because it is alerady added. Verify the name of the snap-in and try again.

在调用 Add-PSSnapin 之前,如何让每个脚本检查管理单元是否已加载?

最佳答案

您应该能够使用类似这样的方法来完成此操作,您可以在其中查询管理单元,但告诉 PowerShell 如果找不到它,则不要出错:

if ( (Get-PSSnapin -Name MySnapin -ErrorAction SilentlyContinue) -eq $null )
{
    Add-PsSnapin MySnapin
}

关于powershell - 如何在调用 Add-PSSnapin 之前检查 PowerShell 管理单元是否已加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1477994/

相关文章:

java - 使用 Java 进行命令行版本控制——处理大量嵌套目录

powershell - 从 Visual Studio Code 更改 powershell 中的当前工作目录

angular - PowerShell 脚本添加 '--prod' 参数以构建 Angular CLI 项目

sql-server - SQL Server脚本数据:输出到文件时,SMO.Scripter不起作用

powershell - WS-Management服务无法处理请求:Powershell

powershell - 检查输入 blob 是否存在

将文件夹中所有文件的格式从 Unicode 更改为 ANSI 的 Powershell 脚本

powershell - 检查注册表项 (reg_binary) 的第 13 位(影子设置)?

powershell - Powershell 模块必须放在单独的文件夹中吗?

azure - 如何在 Azure Function App 上运行 PnP 脚本