目前,我正在尝试使用 Windows 包管理从本地存储库安装软件。现在,我正在使用 nuget 提供程序来获取包。我的问题是,我想在命令之后执行一个脚本Install-Package
。我发现了几个指向nuget 包的工具文件夹中的install.ps1
或init.ps1
文件的答案,但我认为这与 Visual Studio nuget 包有关。
如何在通过 PowerShell 运行 Install-Package 命令后自动启动 PowerShell 脚本?
答案1
是的,你说得对!如果你使用 NuGet 作为提供程序,则需要使用 init.ps1 或 install.ps1。遗憾的是,Visual Studio 2017 不再支持 install.sp1。
如果所讨论的包在 NuGet 中不可用,那么您可能需要使用其他提供程序。
您可以查看包管理 cmdlet
你必须管理提供者和来源取决于可用的包。
如果您想创建自己的本地存储库:创建本地 NuGet 存储库
要在 Install-Package 命令后调用 Powershell 脚本,请创建一个名为 install.ps1 的文件并添加以下代码:
Install-Package -Name 7Zip4Powershell
<Your stuff, for e.g;>
Get-ChildItem
Get-Hotfix
运行脚本:powershell.exe -ExecutionPolicy Bypass -File install.ps1
如果您在不同的 ps1 文件中有除 Install-Package 之外的代码,那么您可以调用该脚本:
Install-Package -Name 7zip4powershell
.\MyCode.ps1
查看此链接:在 NuGet 包安装和删除期间运行 PowerShell 脚本
最后,如果你真的想看看代码里面Install-Package
,请查看:反汇编 Powershell cmdlet
希望这可以帮助!