简介
Scoop 是 Windows 下的命令行包管理器,类似于 CentOS 中的 yum 和 macOS 中的 Homebrew。它可以帮助你用命令安装、更新、卸载和管理常用软件,让开发环境的维护更轻松。
Scoop 的特点是尽量减少安装过程对系统环境的污染。它通常把软件安装在用户目录下,并通过 shims 目录暴露可执行命令,因此不同软件之间不容易互相干扰。
快速上手
官方安装命令如下。打开 PowerShell,粘贴并执行即可:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
默认情况下,Scoop 会安装到 C:\Users\<username>\scoop 目录。如果需要自定义安装目录,请先阅读安装一节。
安装完成后,可以执行以下命令查看帮助信息:
scoop help
入门篇
环境准备
安装 Scoop 前,请先确认系统满足以下条件:
- 使用 Windows 7 SP1、Windows Server 2008 或更高版本,例如 Windows 10、Windows 11。
- 使用最新版 PowerShell,或使用 Windows PowerShell 5.1。
- 可以正常访问 GitHub。
- 安装路径不包含中文、空格或其他特殊字符。
如果你在中国大陆地区使用 Scoop,建议提前准备稳定的网络环境,或按后文的方式配置代理。
安装
自定义安装路径
如果接受默认路径,可以跳过这一步。若希望把 Scoop 安装到其他目录,请在安装前设置环境变量:
# 设置 Scoop 默认程序安装位置,目录可自行修改
$env:SCOOP = 'D:\Tools\Scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')
# 设置 Scoop 全局程序安装位置,目录可自行修改
$env:SCOOP_GLOBAL = 'D:\Tools\ScoopGlobal'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
SCOOP_GLOBAL 会写入机器级环境变量,通常需要管理员权限。如果不需要安装全局软件,可以只设置 SCOOP。
设置脚本执行权限
Scoop 需要在当前用户范围内允许运行远程签名脚本:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
执行安装命令
任选下面一种方式安装 Scoop:
# 官方完整命令
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
# 官方简写命令
irm get.scoop.sh | iex
如果官方地址访问不稳定,也可以临时使用镜像地址:
iwr -useb scoop.201704.xyz | iex
安装完成后,指定目录中会生成以下文件夹:
apps:Scoop 安装的软件目录。buckets:软件仓库目录,用于记录软件包清单。cache:软件下载后的安装包缓存目录。persist:软件用户数据目录,更新软件时通常不会被覆盖。shims:命令转发目录,用于把已安装软件暴露到命令行。
安装基础依赖
建议先安装常用基础依赖,并留意安装后的提示信息:
scoop install git 7zip dark innounp
其中,git 用于管理 bucket,7zip、dark 和 innounp 常用于解压或处理安装包。
设置
配置代理
如果 Scoop 下载软件或访问 GitHub 时速度较慢,可以尝试配置代理:
# 查看当前代理
scoop config proxy
# 设置代理。127.0.0.1:7890 仅为示例,请替换为自己的代理地址
scoop config proxy 127.0.0.1:7890
# 取消代理
scoop config proxy off
添加软件仓库
Scoop 的软件清单由 bucket 提供。你可以在 Scoop Buckets 查看常用仓库,也可以根据需要添加第三方仓库。
例如,添加 apps 仓库:
# 查看当前仓库列表
scoop bucket list
# 添加 apps 仓库
scoop bucket add apps https://github.com/kkzzhizhou/scoop-apps
# 移除 apps 仓库
scoop bucket remove apps
如果没有添加第三方仓库,也可以添加官方 extras 仓库,以获取更多常用软件:
scoop bucket add extras
加速软件搜索
当 scoop search 搜索较慢时,可以安装 sfsu:
# 如果尚未添加 extras 仓库,请先执行
scoop bucket add extras
# 安装 sfsu
scoop install sfsu
安装完成后,可以直接使用 sfsu 替代 scoop search。如果希望继续使用 scoop 命令并自动接入 sfsu,可以在 PowerShell profile 文件中添加钩子:
# 查看 profile 文件位置。如果文件不存在,请自行创建
$profile
# 使用记事本打开 profile 文件
notepad $profile
# 在 profile 文件末尾添加以下内容
Invoke-Expression (&sfsu hook)
保存后重新打开 PowerShell,即可生效。
附录
常用命令
# 查看帮助信息
scoop help
# 搜索软件
scoop search <app>
# 安装软件
scoop install <app>
# 卸载软件
scoop uninstall <app>
# 更新指定软件
scoop update <app>
# 更新所有软件
scoop update *
# 查看软件简要信息
scoop info <app>
# 查看已安装软件列表
scoop list
# 打开软件官网
scoop home <app>
# 显示安装包缓存
scoop cache show
# 删除所有安装包缓存
scoop cache rm *
# 删除所有软件的旧版本,并清理安装包缓存
scoop cleanup -k *
最佳实践
- 安装软件前,先使用
scoop search <app>搜索软件名称,避免装错包。 - 安装多个软件时,可以一次性执行
scoop install <app> <app2> <app3>。 - 卸载多个软件时,可以一次性执行
scoop uninstall <app> <app2> <app3>。 - 更新多个软件时,可以一次性执行
scoop update <app> <app2> <app3>。 - 定期执行
scoop cleanup -k *清理旧版本和缓存,减少磁盘占用。 - 添加第三方 bucket 前,先确认仓库来源可信,并留意软件清单是否长期维护。