前言

Scoop是Windows的命令行安装程序。

如果用过Linux系统,使用apt-get工具安装过软件,或者用过Python,知道pip工具用于管理Python各种依赖包,那么理解Scoop就比较容易,这些工具的设计理念与使用方法都非常类似。

Scoop一般用来管理绿色软件,即是一种通过解压压缩包即可就地使用的软件,对于比较专业软件(比如Office、Adobe等)支持不好

img

基础环境配置

在准备安装之前,建议进行配置(如果你能解决GitHub访问问题,请跳过😄)

如果你是win10系统,建议安装Terminal(win11已经自带,请跳转至正式开始Scoop的安装

新一代终端Windows Terminal
支持标签页、多种命令行工具多开…
可定制美化

Terminal 终端

安装 Terminal

  1. 打开Windows自带的应用商店(MicroSoft Store)
  2. 搜索Terminal
  3. 安装

建议添加任务栏方便使用

Terminal 使用

首次运行时,Windows Terminal以Powershell作为默认配置文件启动。下拉菜单可用于启动其他选项卡并访问设置:

可以在设置里面进行修改透明度,更改背景等设置

我的个人效果如下:

更多使用技巧请点击访问官方文档

正常访问 GitHub

由于GitHub在国内时常会被DNS劫持,所以需要进行本地反代理,保证访问GitHub稳定。

本文推荐使用Steam++来完成本地反代。

安装:

  1. 打开Windows自带的Microsoft Store.
  2. 搜索Watt Toolkit并安装.

然后,给GitHub打上勾点一键加速.

打开GitHub链接看看是否能访问:https://github.com

正式开始Scoop的安装

github地址:https://github.com/ScoopInstaller/Scoop

文档地址:https://scoop.sh/

命令安装

为了让PowerShell可以执行脚本,首先需要设置PowerShell执行策略,通过输入以下命令Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser(在之前安装好的Terminal执行)

从非管理员 PowerShell 运行此命令以使用默认配置安装 scoop, Scoop将安装到 C:\Users<YOUR USERNAME>\scoop

irm get.scoop.sh | iex
# 使用镜像安装
irm get.scoop.sh -Proxy 'http://<ip:port>' | iex

或者以下命令:

Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')

高级安装

如果你不想安装到C盘,可采用此方法(小白不推荐)

先执行

irm get.scoop.sh -outfile 'install.ps1'

下载安装程序

可以explorer .在当前打开资源管理器,查看下载的文件

查看安装程序的所有可配置参数。

.\install.ps1 -?

例如,可以将 scoop 安装到自定义目录,配置 scoop 进行安装全局程序到自定义目录,并在安装过程中绕过系统代理。

.\install.ps1 -ScoopDir 'D:\Applications\Scoop' -ScoopGlobalDir 'F:\GlobalScoopApps' -NoProxy

或者,可以使用旧方法通过设置环境变量来配置自定义目录。(不推荐)

$env:SCOOP='D:\Applications\Scoop'
$env:SCOOP_GLOBAL='F:\GlobalScoopApps'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
irm get.scoop.sh | iex

默认情况下已禁用管理员控制台下Scoop的安装,如果需要使用 -RunAsAdmin

irm get.scoop.sh -outfile 'install.ps1'
.\install.ps1 -RunAsAdmin [-OtherParameters ...]
# I don't care about other parameters and want a one-line command
iex "& {$(irm get.scoop.sh)} -RunAsAdmin"

Scoop配置

如果输出了successfully,就代表已成功安装Scoop。

打开C:\Users\<user name>\scoop路径就可以看到下面的文件夹

  • app —— 安装的软件放在这里
  • bucket —— 已经添加的软件仓库
  • shims —— Scoop可以自动生成shell脚本,省去了Windows配环境变量的烦恼(我的jdk,MG-win64,cmake,python,conda,git等环境变量基本就靠Scoop的shims)

我们先在Terminal中输入scoop -v看看scoop命令是否可以使用

可以看到我这边可以正常显示版本号

输入scoop help就可以看Scoop命令

部分命令:

Command Summary
update 更新
list 显示已安装列表
install 安装
uninstall 卸载
search 搜索app
status 检查更新
bucket Scoop buckets
cache 缓存
reset 重设
cleanup 清除旧版
help 帮助
shim shims

安装apps

由于Scoop的软件仓库,是基于Git和7zip工具管理的,所以我们首先需要安装的就是git。

scoop install git
git config --global http.sslVerifyfalse # git 配置

注意:安装时会自动安装7zip。安装会很慢…等

好吧,其实可以先安装aria2多线程加速(笑

scoop install aria2

如果使用代理,有时需要通过如下命令关闭 aria2

scoop config aria2-enabled false
scoop update # 更新一下Scoop
scoop全局安装软件可以附加`-g`,如:scoop install git -g;但是必须以管理员的身份执行。

bucket

在 Scoop 中,存储桶是应用程序的集合。或者,更具体地说,存储桶是一个 Git 存储库,其中包含描述如何安装应用程序的 JSON 应用程序清单。

Scoop默认的bucket是main

scoop bucket known # 查看社区的bucket列表

我们可以为main bucket配置镜像来加速

  1. 先卸载 main的bucket
scoop bucket rm main
  1. 添加 main 镜像代理
scoop bucket add main https://mirror.ghproxy.com/github.com/ScoopInstaller/Main.git

添加其他 bucket

常用bucket:https://rasa.github.io/scoop-directory/by-score.html

scoop bucket add extras # 添加了多种软件包
scoop bucket add versions # 保留了旧版本
scoop bucket add dorado https://github.com/chawyehsu/dorado # 许多国内应用qq、微信

国内推荐:

scoop bucket add scoop-cn https://mirror.ghproxy.com/github.com/duzyn/scoop-cn

指定仓库安装

scoop install <bucket_Name>/<packName>

jdk安装实例演示

  1. 先添加Java的bucket
scoop bucket add java
  1. 再使用scoop search来搜索jdk的包
scoop search jdk
  1. 选择自己需要的jdk版本,以下以oraclejdk-lts做演示
scoop install oraclejdk-lts

安装成功!

安装后scoop会保留安装包,可以使用scoop cache show查看缓存。

scoop cache rm * # 清除所有缓存

scoop 版本控制

scoop可以使用scoop reset切换软件版本,用法是scoop reset <pack name>@<version number>scoop reset <对应的软件包名>

scoop install <pack name>@<version number>安装指定的版本(这个不太好用)

scoop cleanup用来清理旧版本

scoop cleanup * # 清理所有旧版

软件推荐

#调用管理员权限
scoop install sudo
#使用
sudo scoop install git -g

#scoop 本地搜索,提高搜索效率
scoop install scoop-search    
scoop-search jdk

#插件补全
scoop install scoop-completion

我的安装列表

adb
anaconda3
aria2
cmake
dark
innounp
mingw
openjdk11
openjdk8-redhat
oraclejdk-lts
python
scoop-completion
scoop-search
sudo
xmake
7zip
dotnet-sdk-lts
git
nodejs
nodejs-lts
pandoc
picgo
powertoys
snipaste-beta
utools 

附录

常用命令

# 查看已安装程序
scoop list
# 查看更新
scoop status
# 更新版本,更新仓库
scoop update
# 删除旧版本
scoop cleanup
# 自身诊断
scoop checkup

Aria2 的参数

scoop config aria2-retry-wait 4
scoop config aria2-split 16
scoop config aria2-max-connection-per-server 16
scoop config aria2-min-split-size 4M

Scoop代理

#设置代理
scoop config proxy 127.0.0.1:7890
#关闭代理
scoop config proxy false
#使用用户代理
scoop config proxy currentuser@default
#绕过代理直连
scoop config proxy none

愿此行,终抵群星!