各個系統都會有自己的工具包管理工具 Ubuntu上 的 apt-get / apt、MacOS上的 homebrew、Linux 的 snap 、CentOS 或者 REHL 的 yum 或者 dnf、Windows 的 Chocolatey、Scoop、Winget,透過這樣的工具,做到自動安裝,節省下載和手動安裝時間。
之前有介紹 Chocolatey 配置與安裝 | 余小章 @ 大內殿堂 - 點部落 (dotblogs.com.tw) 的使用方式,這次來介紹 Scoop。
不同於 Chocolatey , Scoop 預設安裝位置在 home (個人)目錄,所以安裝軟體時不會有討人厭的 UAC 。另外一個優點就是 Scoop 對環境變數的管理,可以方便開發者快速切換軟體版本。
開發環境
- Windows 10 Pro 20H2
- Powershell 7
- Windows Terminal
安裝請參考 Windows 終端機安裝 | Microsoft Docs - WSL2
安裝 Powershell 7
非必要,你仍然可以選用 cmd / cmder 來執行﹑只不過接下來的範例均是使用 Powershell 操作
安裝 Scoop
官網:Scoop
github 專案:lukesampson/scoop: A command-line installer for Windows. (github.com)
文件:
Home · lukesampson/scoop Wiki (github.com)
Introduction | Scoop (scoop-docs.vercel.app)
預設安裝
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
# or shorter
iwr -useb get.scoop.sh | iex
預設安裝路徑為
%userprofile%\scoop
執行結果如下:

個人帳號安裝
指定安裝目錄和環境變數
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
$env:SCOOP='d:\tools\scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
執行結果如下:
![Yao Chang Yu@119N000082
[environment] : SCOOP' , 'D: ,
Yao Chang Yu@119N000982
Yao Chang Yu@110N000082
) iex (new—object net webclient) . downloadstring('https://get.scoop.sh')
Initializing.
Downloading scoop...
Extracting...
Creating shim...
Downloading main bucket...
Extracting.
Adding D: to your path.
lastupdate' has been set to
Scoop was installed successfully!
Type scoop help' for instructions.
Yao Chang
Yao Chang Yu
[21 : 53]
[21 : 54]
[21 : 54]
[21 :
User](https://dotblogsfile.blob.core.windows.net/user/余小章/fbc77522-28c3-4aad-9998-a98feb9fc971/1629783661.png)
全域安裝
指定安裝目錄和環境變數,這必須使用管理員身分啟動 Windows Terminal
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
$env:SCOOP_GLOBAL='d:\tools\scoop'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
執行結果如下:

常用指令
安裝完成後,重啟 Windows Terminal,調用 scoop help 就可以確定有沒有安裝成功
執行結果如下:

取得已知 bucket
列出官方支援的 bucket
Scoop bucket known
執行結果如下:
![Yao Chang Yu
Yao Chang Yu@110N000082
scoop bucket known
main
extras
versions
nightlies
nirsoft
php
nerd—fonts
nonportable
java
games
jetbrains
Yao Chang Yu@110N900082
[22 : 59]
[22 : 59]](https://dotblogsfile.blob.core.windows.net/user/余小章/fbc77522-28c3-4aad-9998-a98feb9fc971/1629787374.png)
加入 bucket
scoop bucket add extras
執行結果如下:
![Yao Chang Yu
x
Yao Chang Yu@110N000082
) scoop bucket add extras
Checking repo...
ok
The extras bucket was added successfully .
Yao Chang Yu@110N000082
[12:13]
[12:13]](https://dotblogsfile.blob.core.windows.net/user/余小章/fbc77522-28c3-4aad-9998-a98feb9fc971/1629787385.png)
列出已經安裝的 bucket
Scoop bucket list
執行結果如下:

移除 bucket
Scoop bucket rm awesome
搜尋所有可用的程序
scoop search
執行結果如下:
![Yao Chang Yu
Some useful commands are:
Yao Chang Yu@110Neoee82
scoop search
main' bucket:
Ipassword—cti (1.11.2)
7zip (19.00)
abc (1.0. 2)
ack (3.5.9)
acmesharp (O. 9.1.326)
act (0.2.24)
adb (31.0.3)
ag (2.2.e-58-g5a1c8d8)
ahoy (2.9. e)
aks—engine (O. 66 . O)
alass (2.0.9)
atgernon (1.12.12)
atiyun (3. e. 88)
allure (2.1q.9)
ammonite (2. Ll. O)
amulet (1.21.10)
android-cit (7583922)
annie (e. 19.3)
ansicon (1.89)
ant (1.19.11)
apache (2.q.U8)
apimtemplate . 5)
apktool (2.5.e)
apngasm (3.8.9)
arduino—cli (9 .18.3)
argocd (2. I.e)
[22 : 03]](https://dotblogsfile.blob.core.windows.net/user/余小章/fbc77522-28c3-4aad-9998-a98feb9fc971/1629787451.png)
搜尋套件
scoop search python
下圖搜尋了兩個 bucket

內建的 scoop search 速度有點慢,可以改用 scoop-search
scoop install scoop-search
或是在這個網站搜尋
安裝套件
scoop install task
執行結果如下:

對 Scoop 進行版本更新
scoop update
更新
scoop update <app> # 更新特定 app
scoop update * # 更新全部
解除安裝
scoop uninstall <app> # 解除安裝特定 app
scoop uninstall scoop # 解除安裝所有 app
切換版本
scoop reset [app]@[version]
清除快取
scoop cache rm <app> # 移除特定 app 快取
scoop cache rm * # 移除所有 app 快取
刪除舊版本
scoop cleanup <app> # 删除舊版本
scoop cleanup * # 删除所有舊版本
Buckets
在 Scoop 中,Buckets 是應用程序的集合。bucket 是一個 Git 存儲庫,其中包含描述如何安裝應用程序的JSON 應用程序清單。預設的 bucket是 main 主存儲桶,它始終可用預設作安裝應用程序的主要來源。執行 scoop bucket known 看到官方維護的其他 bucket
- extras:蒐集包含有 GUI 的工具。
- java:蒐集各種不同發行版的 JDK 、 JRE ,像是 Oracle Java 、 OpenJDK 、 AdoptOpenJDK
- version :main 只維護最新正式版本的軟體,當需要舊版本可以從這裡安裝。
預設的情況下,運行時 scoop install <app>,它會在主存儲桶中查找,但也可以從其他存儲桶安裝。
除了官方之外,也可以建立自己的 git 倉儲來維護自己的 bucket 參考 Creating your own bucket,也可以在 awesome-scoop 找到更多社群維護的 bucket。
加入其他的 bucket
官方
scoop bucket add extras
第三方
- 語法
scoop bucket add <name-of-bucket> <location-of-git-repo>
- 範例
#官方的extras
scoop bucket add extras https://github.com/lukesampson/scoop-extras.git
scoop bucket add awesome https://github.com/tapannallan/awesome-scoop.git
scoop bucket add JetBrains
PS.似乎不可用
這裡有整理出一些 bucket
推薦使用這一個 repo 會固定每天合併其他的 bucket,位置 https://github.com/kkzzhizhou/scoop-apps。
scoop bucket add apps https://github.com/kkzzhizhou/scoop-apps
參考
Introduction | Scoop (scoop-docs.vercel.app)
Scoop - 在Windows命令行上進行程序安裝 - IT閱讀 (itread01.com)
Windows 套件管理工具 - Scoop:叡揚部落格 (gss.com.tw)
Windows 安裝 Scoop 來進行包管理 | IT人 (iter01.com)
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET