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

[玩转系统] PowerShell 6.0 发布工具

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

PowerShell 6.0 发布工具


您应该知道,PowerShell 的下一版本是开源且跨平台的。您将能够在 Windows、Mac 和选定的 Linux 发行版上运行 PowerShell v6。所有代码目前都处于 alpha 状态,并托管在 PowerShell GitHub 存储库上。您也可以在此处下载新版本以进行安装和测试。我承认我有点落后了,部分原因是我不经常检查是否有新版本。因此,我构建了一个 PowerShell 模块来为我执行此操作,甚至下载新的安装包。最好的部分是,这应该可以跨平台工作。

我的模块名为 PSReleaseTools,目前有 3 个命令。

  • 获取 PSReleaseSummary
  • 获取 PSReleaseAsset
  • 保存-PSRelease

所有函数都利用 GitHub API,与 Invoke-RestMethod 或 Invoke-WebRequest 结合使用,允许您以编程方式与 GitHub 进行交互。

第一个命令查询 PowerShell 存储库发布页面并构建文本摘要。

[玩转系统] PowerShell 6.0 发布工具

我将发布名称和日期放在顶部,以便您可以快速检查是否需要下载新内容。在 GitHub 中,每个发布文件都称为资产。 Get-PSReleaseAsset 命令将查询 GitHub 有关每个文件的信息,并将自定义对象写入管道。

[玩转系统] PowerShell 6.0 发布工具

默认情况下,它将显示所有平台的资源,但如果您想将自己限制为像 MacOS 这样的单个条目,我添加了一个 -Family 参数。

[玩转系统] PowerShell 6.0 发布工具

当然,您需要下载这些文件,这是最后一个命令的工作。默认情况下,该命令会将所有文件保存到当前目录,除非您指定不同的路径。您可以通过使用验证集的 -Name 参数将选择限制为特定平台。

[玩转系统] PowerShell 6.0 发布工具

您可以选择多个名称。如果您仅选择 Windows 名称,则有一个名为 Format 的动态参数,您可以在其中选择 ZIP 或 MSI。并且该命令支持-WhatIf。

[玩转系统] PowerShell 6.0 发布工具

我还意识到您可能会运行 Get-PSReleaseAsset,也许是为了在下载之前检查详细信息。既然您拥有这些对象,为什么不能将它们通过管道传输到保存命令呢?该命令具有文件名、大小和 URL 参数,它们接受按属性名称输入的管道,以便您可以像这样进行管道输入:

[玩转系统] PowerShell 6.0 发布工具

顺便说一句,我正在使用文件大小来测试文件是否已完全下载。我知道发布页面中有哈希值,但我不想尝试解析它们,而且我在其他地方找不到它们。使用 Size 似乎效果很好。

现在,我拥有了掌握 PowerShell v6 最新版本所需的一切。我也有报告称这适用于运行 v6 alpha 位的非 Windows 系统。您可以在 GitHub 上找到该模块:https://github.com/jdhitsolutions/PSReleaseTools。到处尝试一下,让我知道效果如何。请使用 GitHub 上的问题跟踪。

更新:嗯,这并没有花很长时间。该模块现在位于 PowerShell Gallery 上,因此您可以从那里安装它。

Install-Module PSReleasetools

我做了一项重大更改,那就是为了保持一致性,将保存函数重命名为使用与 Get-PSReleaseAsset 相同的名词。我应该早点这么做的。当从一个命令通过管道传输到另一个命令时,特别建议这样做。当我正在处理保存命令时,我开始沿着一条路径,然后意识到我可以包含另一条路径,因此命令发生了一些变化,我没有费心重命名它。我们现在应该很好。让我知道它对你来说效果如何。

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

取消回复欢迎 发表评论:

关灯