鉴于我刚刚使用nuget(使用powershell)在解决方案或项目文件夹之外安装了最新版本的软件包,例如PS> nuget install octopustools
然后在当前文件夹下创建一个目录,在本例中为\OctopusTools.4.22.1
。
我想访问具有相对路径\OctopusTools.4.22.1\tools\octo.exe
的包内的exe。但是,我想要一种简单的方法来了解我的脚本中的路径,因为版本号可以根据版本进行更改。
有没有简单的方法让nuget告诉我刚刚安装的文件夹的名称,即OctopusTools.4.22.1?
我想避免根据递归扫描文件夹猜测路径或尽可能硬编码版本号。 docs似乎没有提供任何明显的东西?
答案 0 :(得分:0)
非常感谢@ Matt Ward的评论解决了它 - 只需使用ExcludeVersion,即使安装了不同的版本,也可以保证安装的exe的路径。
为了使这个工作,我必须更新安装的nuget版本,因为旧版本不支持此标志。 (如果使用chocolatey,则更新很容易:choco upgrade nuget.commandline -y
然后转到octo.exe(在本例中调用help)就这样做:
PS> nuget install OctopusTools --ExcludeVersion
PS> OctopusTools\tools\octo.exe help