当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何创建具有多个功能的PowerShell模块

作者:精品下载站 日期:2024-12-14 07:37:23 浏览:14 分类:玩电脑

如何创建具有多个功能的PowerShell模块


在这篇博文中,我将通过示例向您展示如何创建具有多个功能的模块。你会发现这不是火箭科学。让我们开始吧。

为了在模块中使用多个函数,我们必须将它们声明为要导出的函数。这也意味着我们需要一个包含该语句的模块清单文件。

客观的

本教程的目标是在名为 Patrick模块中提供两个函数。这两个函数称为Get-SmallFilesGet-BigFiles

创建模块文件夹“Patrick”

首先,我们需要创建一个模块文件夹。我们可以在三个文件夹路径之间进行选择。我将选择第一个选项,然后在 C:\Program Files\Windows PowerShell 中创建该文件夹,这意味着该模块将可供所有用户使用。

这是我的文件夹“Patrick”的代码。

New-Item -Path ($env:PSModulePath -split ';')[0] -ItemType Directory -Name Patrick

[玩转系统] 如何创建具有多个功能的PowerShell模块

现在我们在模块文件夹中有一个文件夹!

创建模块清单文件“patrick.psd1”

如前所述,我们需要一个 psd1 文件作为我们的清单文件。我们提供了所需的所有信息,特别是两个函数:Get-SmallFiles 和 Get-BigFiles。

$paramHash = @{
    Path = 'C:\Program Files\WindowsPowerShell\Modules\Patrick\patrick.psd1'
    RootModule = "patrick.psm1"
    Author = "Patrick Gruenauer"
    CompanyName = "a-d.site"
    ModuleVersion = "1.0"
    Guid = '56f62aec-33ca-4d8a-8685-c6a87ac9a002'
    PowerShellVersion = "5.1"
    Description = "Testmodul"
    FormatsToProcess = ""
    FunctionsToExport = @('Get-BigFiles', 'Get-SmallFiles')
    AliasesToExport = ""
    VariablesToExport = ""
    CmdletsToExport = ""
   }
   
   New-ModuleManifest @paramHash

让我们继续创建 PowerShell 模块文件。

使用两个函数创建 PowerShell 模块文件 (psm1):Get-SmallFiles 和 Get-BigFiles

接下来,我们配置 PowerShell 模块文件及其中的所有函数,在我的例子中是 Get-SmallFiles 和 Get-BigFiles。

New-Item -Path 'C:\Program Files\WindowsPowerShell\Modules\Patrick' -ItemType File -Name patrick.psm1

文件为空。让我们在其中添加一些内容。

Add-Content -Path 'C:\Program Files\WindowsPowerShell\Modules\Patrick\patrick.psm1' `
-Value 'function Get-BigFiles {Get-ChildItem -Path $home -File -Recurse | Where-Object Length -gt (1MB)}; 
function Get-SmallFiles {Get-ChildItem -Path $home -File -Recurse | Where-Object Length -lt (1MB)}'

任务完成。

你怎么知道这有效?

打开 PowerShell 5 或 PowerShell 7。

键入 Get-Smallfiles,然后键入 Get-BigFiles。

[玩转系统] 如何创建具有多个功能的PowerShell模块

希望这有用。下次见。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯