如何仅针对可更新Chocolatey包生成批量安装命令?
Chocolatey 仅生成可更新包的安装命令解决方案
你遇到的问题是choco list outdated -l -r --id-only仅返回"chocolatey",原因是choco outdated默认会包含Chocolatey自身,且-l参数在这里是多余的(choco outdated本身就是检查本地已安装包的更新)。
以下是修正后的命令,可生成所有可更新包的安装更新命令:
choco outdated -r --id-only | Where-Object { $_ -ne 'chocolatey' } | ForEach-Object { Write-Output "choco install -y $_" }
命令说明:
choco outdated -r --id-only:以精简格式输出所有本地可更新包的ID(默认包含Chocolatey自身)Where-Object { $_ -ne 'chocolatey' }:过滤掉Chocolatey自身的更新(如果需要更新它,可删除这一段)ForEach-Object { Write-Output "choco install -y $_" }:为每个可更新包生成对应的安装更新命令(choco install -y会自动更新已安装的包)
内容的提问来源于stack exchange,提问作者usgrcm
相关产品推荐
相关产品推荐

