Windows 安装 Scoop 包管理器

先决条件

PowerShell 版本 5.1 或以上。运行以下命令查看

Get-Host | Select-Object Version
或者
$PSVersionTable.PSVersion

不满足?将 Windows 更新到最新版本

安装Scoop

步骤 1、2 在管理员 cmd 执行、步骤 3 在非管理员 cmd 执行

# 1.自定义Scoop安装目录
$env:SCOOP='D:\Scoop'
[Environment]::SetEnvironmentVariable('SCOOP',$env:SCOOP,'User')

# 2.此步可省略,自定义Scoop全局包安装目录(为一台机器的所有用户安装)
$env:SCOOP_GLOBAL='D:\Scoop_Global'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL',$env:SCOOP_GLOBAL,'Machine')

# 3.安装 scoop
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# 由于国内特殊的网络环境,此步用 mirror.ghproxy.com 加速
# 先确定 mirror.ghproxy.com 能否访问,若无法访问则依次尝试替换以下网站
# https://gh-proxy.com/
# https://gh-proxy.com/
# https://ghproxy.net/
# https://hub.gitmirror.com/
# https://github.moeyy.xyz/
irm https://mirror.ghproxy.com/raw.githubusercontent.com/lzwme/scoop-proxy-cn/master/install.ps1 | iex

注意:

  1. 所指定的路径必须存在,若不存在应手动创建
  2. 由于环境变量中文路径的支持问题,Windows 用户名或自定义的安装路径不能有中文
  3. scoop 官方仓库中的软件大多数都是便携版的开源软件

Scoop 版本选择

SCOOP_BRANCH 默认为 master,表示稳定版
若要使用最新版,则

scoop config SCOOP_BRANCH develop
scoop update

Scoop 源码存储库加速(更新本体)

scoop config scoop_repo https://mirror.ghproxy.com/https://github.com/ScoopInstaller/Scoop

目的:当执行 scoop update 命令时,默认会从 https://github.com/ScoopInstaller/Scoopl 更新 scoop 本体,稳妥起见使用 mirror.ghporxy.com 代理

Scoop 仓库加速(下载、更新软件)

下载慢的原因:scoop 中大多是开源软件,下载地址以 https://github.com/ 开头,而用国内的网络直接访问 GitHub 可能打都打不开,更别说下载了,即使能下载也慢如龟速。因此对于能够直接在 GitHub 上下载的软件,可以通过 ghporxy.com 代理来解决。对于不能在 GitHub 上下载的其它软件(下载地址不以 https://github.com/ 开头),就需要其他方法解决了。好在一些知名的国外软件国内下载速度也是很快的,比如 IDEA、Postman 等。针对这两种情况,下面提供了两种解决方法

方法一

使用 scoop buckets 代理镜像库

scoop bucket add spc https://mirror.ghproxy.com/https://github.com/lzwme/scoop-proxy-cn
scoop bucket rm main
scoop bucket add main https://mirror.ghproxy.com/github.com/ScoopInstaller/Main

区别:scoop-proxy-cn 包含了众多 bucket,且所有以 https://github.com/ 开头的下载链接均已加了前缀 https://mirror.ghproxy.com/ 来加速
详见:https://github.com/lzwme/scoop-proxy-cn/blob/main/README.md

方法二

让 scoop 网络连接通过代理进行

scoop config proxy 127.0.0.1:10809(v2 用户)
scoop config proxy 127.0.0.1:7897(cat 用户)

然后通过 scoop bucket add 添加 GitHub 的 scoop bucket,此方法要保证 scoop 的任何操作都要在开启代理的网络环境下进行

安装必要的软件

scoop 依赖 git,不安装无法进行后续操作

scoop install git # 强制安装
scoop install aria2 # 可选,多线程下载器,提高下载速度

安装语法提示插件(可选)

# 1.安装
scoop install scoop-completion

# 2.启用
# create profile if not exist
if (!(Test-Path $profile)) { New-Item -Path $profile -ItemType "file" -Force }
# 查看 $profile
$profile
# 打开该文件,新增以下内容
Import-Module "$($(Get-Item $(Get-Command scoop.ps1).Path).Directory.Parent.FullName)\modules\scoop-completion"
# 用法
scoop ins[Press Tab]
scoop install py[Press Tab]
scoop uninstall [Press Tab]

安装 scoop-search(可选)

scoop search 效率低下,建议用 scoop-search 替代

scoop install scoop-search
# 将其添加到您的 Powershell 配置文件(通常位于 $PROFILE)
Invoke-Expression (&scoop-search --hook)

实战:Scoop 安装 MySQL

scoop install mysql
# 启动mysql
mysqld --console
# my.ini设置了root用户
mysql -uroot
# 为root用户设置密码,密码为root
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

# 设置开机启动,注册为服务(需管理员权限)
mysqld --install MySQL --defaults-file="D:\Scoop\apps\mysql\current\my.ini"
# 关闭开启启动(需管理员权限)
mysqld --remove
# 参考 https://dev.mysql.com/doc/refman/8.1/en/windows-start-service.html

这里 Scoop 的优势就体现出来了,搜索任意一篇“MySQL安装教程”,通篇图文并茂的文章操作下来,其实也就上面几行命令,节省了不少时间

更新 Scoop 以及 bucket

scoop update

卸载 Scoop

scoop uninstall scoop

警告:这将卸载 Scoop 以及所有随 Scoop 安装的程序!

经验

1.有时下载失败,可能是hash校验失败,尝试如下命令重新安装

# -s or --skip Skip hash validation (use with caution!)
scoop install <app> -s

2.在官网 https://scoop.sh 搜索有时比 scoop search 更快
3.有时下载失败,可尝试关闭 aria2

scoop config aria2-enabled false

4.从 0.4.0 版本开始必须存在 main bucket,否则执行 scoop update 会报错

PS C:\Users\username> scoop update
Updating Scoop…
Updating Buckets…
INFO Converting ‘main’ bucket to git repo…
ERROR ‘main’ bucket not found.
Failed to remove local ‘main’ bucket.

常用命令

scoop list # 查看已安装软件
# 搜索、安装
scoop search <app> # 搜索软件
scoop install <app> # 下载并安装软件
# 更新
scoop update # 更新 scoop 和所有 bucket
scoop status # 检查已安装包是否有更新
scoop update <app> # 更新指定包
scoop update * # 更新所有包
# bucket
scoop bucket known # 查看官方支持的下载源
scoop bucket add <name> [<repo>] # 添加下载源
# scoop 更新 app 后,其旧版本并不会被删除,可通过以下命令删除
scoop cleanup <app>
scoop cleanup *
scoop hold <app> # 锁定版本(暂停更新)
scoop unhold <app> # 解除版本锁定
scoop reset <app@版本号> # 切换包到指定版本(scoop 特色)
scoop cache rm * # 清空缓存(清空cache目录)
# 备份
scoop export > scoopfile.json # 导出包
scoop import scoopfile.json # 导入包
# 打开应用主页
scoop home <app>
# 自身诊断
scoop checkup

杂谈

Windows 管理器我只用过 chocolatey、scoop、还有自家的 winget,目前比较下来还是 scoop 最好用,chocolatey 虽然老牌但很多软件源缺少维护且需要管理员权限,winget 对国内软件支持度高多但还不成熟。如果是 MacOS,就选 homebrew 吧。

GitHub:https://github.com/ScoopInstaller/scoop
官网:https://scoop.sh
其他教程:https://zhuanlan.zhihu.com/p/463284082

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值