Windows下包管理工具-Scoop详细使用教程

Scroll Down

视频讲解链接

https://www.bilibili.com/video/BV1uNiLeGEbg/?vd_source=3e72b5992708267326d0abbe42fd7c4d

Windows下常见终端软件安装方法

1. 包管理器是什么?

包管理器(package manager)是开发人员常用的生产力工具,Ubuntu上的 Apt-Get 和MacOS上的 Homebrew 等的使用都让开发环境的搭建变得无比丝滑。这里的包,可以理解成广义上的软件,不仅包含常见的基于图形用户界面(GUI)的软件,还包含基于命令行界面(CLI)的开发工具。简单说,包管理器就是一个软件自动化管理工具,可以让我们省去下载软件安装包以及安装的一系列过程,真正实现傻瓜式软件安装操作。

2. Scoop

2.1 Scoop是什么?

Scoop是一款软件包管理工具,类似你电脑上的软件管家,只不过Scoop是命令行操作的(见图一),可以说是一款专门为程序员开发的软件管家,你不需要再一个一个的访问官网,然后找软件的安装包,而只需要一个命令,全部搞定,最大的特点是可以自动配置环境变量、自动解决依赖冲突,如安装JDK时可以省去配置JAVA_HOME等环境变量,如果你有使用不同的版本需求,也可以下载两个不同版本的jdk,然后使用命令 scoop reset xxx 来切换版本,在重装系统或者换电脑时也可以直接拷贝相关文件稍加操作后就可以安装这些软件,非常方便。

2.2 Scoop安装教程

2.2.1 安装要求

  • 用户名不含中文字符
  • PowerShell 7+
  • Windows 10 1607+ / Windows Server 2012+ / macOS 10.13+
  • .NET Framework 4.5+

2.2.2 安装过程

https://github.com/ScoopInstaller/Scoop#readme

  • Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    
  • Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
    

安装后Scoop默认安装路径:

C:\Users\<YOUR USERNAME>\scoop

更换国内源,选择gitee镜像源,具体参考https://gitee.com/scoop-installer/scoop

scoop config SCOOP_REPO "https://gitee.com/scoop-installer/scoop"
scoop update	

之后可以通过

scoop install 软件包名字

来安装软件

2.2.3 什么样的软件可以通过scoop安装

最有可能通过 Scoop 顺利安装的应用程序是那些被称为“便携式”的应用程序。这些应用程序是压缩文件,解压后可以独立运行。这类应用程序不会产生副作用,例如更改 Windows 注册表或将文件放置在应用程序目录之外

如果不确定想安装的软件是否可以通过scoop,可以使用

scoop search 软件包名字

来确定

此外,scoop默认安装后只有main一个bucket,bucket 是一个 app 元数据的集合,一个 bucket 存放在 Git 仓库里,不同bucket对应不同软件,以下是一些常见bucket以及对应的软件分类:

  • main 开发者会用到的 app,比如某种语言的开发环境
  • extras 存放着不符合 main bucket 规定但又知名的程序。比如浏览器这种 GUI 程序
  • versions 存放着一些知名的 app 的旧版本
  • php 存放着从远古版本到最新版本的 PHP
  • nerd-fonts 存放着 Nerd 字体和其他字体
  • Java bucket 存放着不同版本的 JRE 和 JDK

一般来说 main 仓库和 extras 仓库是每个人必备的仓库

所以找不到要安装的软件可以添加extras bucket:

scoop bucket add extras

2.3 其他常见命令

  • 查看已安装app scoop list
  • 更新scoop scoop update
  • 卸载app scoop uninstall app_name
  • 更新app scoop update app_name
  • 清理旧版本 scoop cleanup app_name
  • 清理安装文件 scoop cache rm app_name删除指定app安装文件或者 scoop cache rm */-a/--all 删除所有安装包
  • 查看scoop设置 scoop config
  • 设置scoop代理 scoop config proxy [<username>:<password>@]host:port

2.4 移植scoop安装软件

  1. 完整复制用户目录下的scoop文件夹到别的地方
  2. 把scoop文件夹粘贴回去用户目录
  3. 在环境变量设置中,新建一个用户变量,名字为SCOOP,值为当前scoop文件夹路径,即 C:\Users\xxxx\scoop
  4. 允许脚本执行 set-executionpolicy remotesigned -s currentuser
  5. 双击用户变量中的path,新建一个路径 %SCOOP%\shims
  6. 执行 scoop reset *