Remove-Module

删除当前会话中的模块。

语法

Remove-Module [-ModuleInfo] <PSModuleInfo[]> [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]

Remove-Module [-Name] <string[]> [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]

说明

Remove-Module cmdlet 将模块的成员从当前会话中删除。

如果模块包含程序集 (.dll),则将删除由该程序集实现的所有成员,但不会卸载该程序集。

参数

-Force

即使模块的访问模式为只读,也将删除模块。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

-ModuleInfo <PSModuleInfo[]>

指定要删除的模块对象。输入包含模块对象 (PSModuleInfo) 的变量或者用来获取模块对象的命令(如 Get-Module 命令)。还可将模块对象通过管道传递给 Remove-Module。

是否为必需?

true

位置?

1

默认值

是否接受管道输入?

true (ByValue)

是否接受通配符?

false

-Name <string[]>

指定要删除的模块的名称。允许使用通配符。还可以将名称字符串通过管道传送到 Remove-Module。

是否为必需?

true

位置?

1

默认值

是否接受管道输入?

true (ByValue)

是否接受通配符?

true

-Confirm

在执行命令之前提示您进行确认。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

-WhatIf

描述如果执行该命令会发生什么情况(无需实际执行该命令)。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

System.String, System.Management.Automation.PSModuleInfo

可将模块名称(字符串)和模块对象通过管道传送到 Remove-Module。

输出

Remove-Module 不生成任何输出。

说明

还可以使用别名“rmo”来引用 Remove-Module。有关详细信息,请参阅 about_Aliases。

示例 1

C:\PS>remove-module -name BitsTransfer

说明
-----------
此命令将 BitsTransfer 模块从当前会话中删除。





示例 2

C:\PS>get-module | remove-module

说明
-----------
此命令将所有模块从当前会话中删除。





示例 3

C:\PS>"FileTransfer", "PSDiagnostics" | remove-module -verbose

VERBOSE: Performing operation "Remove-Module" on Target "filetransfer (Path: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\f
iletransfer\filetransfer.psd1')".
VERBOSE: Performing operation "Remove-Module" on Target "Microsoft.BackgroundIntelligentTransfer.Management (Path: 'C:\Windows\
assembly\GAC_MSIL\Microsoft.BackgroundIntelligentTransfer.Management\1.0.0.0__31bf3856ad364e35\Microsoft.BackgroundIntelligentTransfe
r.Management.dll')".
VERBOSE: Performing operation "Remove-Module" on Target "psdiagnostics (Path: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
psdiagnostics\psdiagnostics.psd1')".
VERBOSE: Removing imported function 'Start-Trace'.
VERBOSE: Removing imported function 'Stop-Trace'.
VERBOSE: Removing imported function 'Enable-WSManTrace'.
VERBOSE: Removing imported function 'Disable-WSManTrace'.
VERBOSE: Removing imported function 'Enable-PSWSManCombinedTrace'.
VERBOSE: Removing imported function 'Disable-PSWSManCombinedTrace'.
VERBOSE: Removing imported function 'Set-LogProperties'.
VERBOSE: Removing imported function 'Get-LogProperties'.
VERBOSE: Removing imported function 'Enable-PSTrace'.
VERBOSE: Removing imported function 'Disable-PSTrace'.
VERBOSE: Performing operation "Remove-Module" on Target "PSDiagnostics (Path: 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
psdiagnostics\PSDiagnostics.psm1')".

说明
-----------
此命令将 FileTransfer 和 PSDiagnostics 模块从当前会话中删除。

此命令使用管道运算符 (|) 将模块名称发送到 Remove-Module。它使用 Verbose 通用参数来获取关于要删除的成员的详细信息。

Verbose 消息显示所删除的项。这些消息会有所不同,因为 BitsTransfer 模块包含一个实现其 cmdlet 的程序集,还包含一个拥有自己的程序集的嵌套模块。PSDiagnostics 模块包含用于导出函数的模块脚本文件 (.psm1)。





示例 4

C:\PS>$a = get-module BitsTransfer

C:\PS> remove-module -moduleInfo $a

说明
-----------
此命令使用 ModuleInfo 参数来删除 BitsTransfer 模块。





另请参阅

概念

Get-Module
Import-Module
about_Modules