我发现Scoop'srepos 比 Chocolatey 的更新更频繁(我错了吗?)。
Scoop 不能立即识别已安装的应用程序,所以我想找到一种方法让 Scoop 知道我已经使用 Chocolatey 安装的应用程序。
答案1
首先,全局安装 Scoop(我喜欢指示它在 Windows 的默认应用文件夹中安装应用程序,程序数据而不是根据用户文件夹):
iwr -useb get.scoop.sh -outfile 'install.ps1'
.\install.ps1 -ScoopDir 'C:\ProgramData\Scoop' -ScoopGlobalDir 'C:\ProgramData'
如果你已经安装了 Scoop(我和你很可能都安装了),不要担心;按照上面的说明操作(将现有的 Scoop 文件夹重命名为其他名称,例如 Scoop0,如果它已经安装在程序数据),然后移动 - 移动!不是复制,这会花费更长的时间 - 将文件和子文件夹从旧文件夹移动到新文件夹,确保 - 这是非常重要的 - 跳过目标文件夹中已有的文件(这样你就不会破坏新的安装)。
如果由于任何原因安装的应用程序无法运行,scoop list | %{scoop reset ($_.Name)}
将通过重建其垫片和快捷方式来修复它们。
这些都是标准的;下面是秘诀:
choco list -l | select -skip 1 | %{$_.split().split('.')[0]} | select -skiplast 1 -unique | %{scoop install -g $_}
这将列出 Chocolatey 安装的所有应用程序,并输入 Scoop 进行全局安装。
Chocolatey 还列出了它未安装在您系统上的已安装应用程序。您也可以通过以下方式将它们提供给 Scoop:
choco list -li | select -skiplast 1 | sls -pattern '^([-\w\s]*)\|' | %{$_.matches.groups[1].value -replace " ",""} | %{scoop install -g $_}