scoop

参考

Scoop介绍

Scoop是一款适用于Windows平台的命令行软件(包)管理工具,这里是Github介绍页。简单来说,就是可以通过命令行工具(PowerShell、CMD等)实现软件(包)的安装管理等需求,通过简单的一行代码实现软件的下载、安装、卸载、更新等操作。其灵感来源于macOS的Homebrew,Mac用户可以去了解了解。

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

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

设置PowerShell权限

为了让PowerShell可以执行脚本,首先需要设置PowerShell执行策略,通过输入以下命令Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser即可。(如果之前已开启,可忽略。)

安装Scoop

通过以下命令,可以将Scoop安装到默认目录(C:\Users\<username>\scoop):

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

或者另一条更短的命令:

1
iwr -useb get.scoop.sh | iex

如果你需要更改默认的安装目录,则需要在执行以上命令前添加环境变量的定义,通过执行以下命令完成:

1
2
$env:SCOOP='D:\Applications\Scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')

其中目录D:\Applications\Scoop可根据自己的情况修改。

完成之后,相应位置就会生成一个scoop文件夹,如图所示:

Scoop常用命令

Scoop的操作命令十分简单,基本结构是scoop + 动词 + 对象,动词就是一个操作动作,如安装、卸载,对象一般就是软件名了(支持通配符*操作),当然这需要你先打开命令行工具。比如我想安装typora,通过输入scoop install typora即可自动完成软件的官网进入+下载+安装等操作。

以下是一些常用的命令说明:

  • search——搜索仓库中是否有相应软件。
  • install——安装软件。
  • uninstall——卸载软件。
  • update——更新软件。可通过scoop update *更新所有已安装软件,或通过scoop update更新所有软件仓库资料及Scoop自身而不更新软件。
  • hold——锁定软件阻止其更新。
  • info——查询软件简要信息。
  • home——打开浏览器进入软件官网。

如果忘记了,可通过输入scoop help来查询语法,以及更多不怎么常用的操作指导。

管理员权限

以管理员权限启动Pow­er­Shell就行.

或者在windows上安装sudo
更简单的方式是先安装 sudo,然后用 sudo 命令来提权执行:

1
2
scoop install sudo 
sudo scoop install -g <app>

仓库管理

参考
查看现有仓库
stars排序的Scoop-directory

现在使用仓库如下

其中apps这个bucket比较特殊,此仓库每天自动合并其他scoop仓库的更新,所以东西特别多.
以CopyTranslator为例

apps这个bucket的软件版本不知道为什么有点旧,已停用.

1
2
3
4
5
6
#添加bucket
scoop bucekt add <bucket>
#指定某一个bucket下载
scoop install <bucket>/appname
#移除某一个bucket
scoop bucekt rm <bucket>

开启多线程下载

使用 Scoop 安装 Aria2 后,Scoop 会自动调用 Aria2 进行多线程加速下载。

1
scoop install aria2

使用 scoop config 命令可以对 Aria2 进行设置,比如 scoop config aria2-enabled false 可以禁止调用 Aria2 下载。以下是与 Aria2 有关的设置选项:

博主在这里推荐以下优化设置,单任务最大连接数设置为 32,单服务器最大连接数设置为 16,最小文件分片大小设置为 1M

1
2
3
scoop config aria2-split 32
scoop config aria2-max-connection-per-server 16
scoop config aria2-min-split-size 1M

常用命令总结

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 更新 scoop 及软件包列表
scoop update

## 安装软件 ##
# 非全局安装(并禁止安装包缓存)
scoop install -k <app>
# 全局安装(并禁止安装包缓存)
sudo scoop install -gk <app>

## 卸载软件 ##
# 卸载非全局软件(并删除配置文件)
scoop uninstall -p <app>
# 卸载全局软件(并删除配置文件)
sudo scoop uninstall -gp <app>

## 更新软件 ##
# 更新所有非全局软件(并禁止安装包缓存)
scoop update -k *
# 更新所有软件(并禁止安装包缓存)
sudo scoop update -gk *

## 垃圾清理 ##
# 删除所有旧版本非全局软件(并删除软件包缓存)
scoop cleanup -k *
# 删除所有旧版本软件(并删除软件包缓存)
sudo scoop cleanup -gk *
# 清除软件包缓存
scoop cache rm *