win10使用Scoop软件包管理器,支持版本切换

1|0介绍

Scoop是一款软件包管理工具,类似你电脑上的软件管家,只不过Scoop是命令行操作的,可以说是一款专门为程序员开发的软件管家,你不需要再一个一个的访问官网,然后找软件的安装包,而只需要一个命令,全部搞定。
Scoop适用于windows平台,而类Unix系统(Linux/MacOS)可以使用SDKMAN,可以参考文章 https://ithelp.ithome.com.tw/articles/10236086

与之类似的还有Chocolatey,微软的winget
ScoopChocolatey的比较: http://www.kokojia.com/article/39520.html
Scoopwinget的比较: https://www.zhihu.com/question/395989844/answer/1236061830

Scoop更适用与开发人员使用

项目地址: https://github.com/lukesampson/scoop

2|0安装

参考教程
https://blog.csdn.net/qq_43741794/article/details/113079959
https://sspai.com/post/52496
https://zhuanlan.zhihu.com/p/135278662

2|1安装位置

scoop有两个安装目录,一个是当前用户的安装目录,一个是所有用户的安装目录。之后的使用中通过scoop安装的软件会安装在这两个目录,默认是在 %USERPROFILE% 下,有需要将其变更到其他目录的可以使用如下配置
使用PowerShell执行如下命令:

# 设置用户软件安装位置 $env:SCOOP='D:\Applications\Scoop' # 自己改你的位置,下同 [Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User') # 设置全局软件安装位置 $env:SCOOP_GLOBAL='F:\GlobalScoopApps' [Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')

实际相当于配置了两个环境变量,当然也可以手动配置。

2|2安装

以管理员身份运行PowerShell,执行

Set-ExecutionPolicy RemoteSigned -scope CurrentUser #然后输入 Y 或 A 回车

然后执行安装命令

Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh') # 或者 iwr -useb get.scoop.sh | iex

2|3配置源

因为scoop的源是github,因为网络的问题往往会比较慢或失败,配置源可以使更新scoopbucket时快一点
但是治标不治本,起不到根本作用, 因为通过scoop安装的软件包基本都在github或国外服,网络的坑依然在

  • 更换 scoop 源
scoop config SCOOP_REPO https://gitee.com/squallliu/scoop scoop update
  • 更换 bucket 源
scoop install git git -C "${Env:USERPROFILE}\scoop\buckets\main" remote set-url origin https://hub.fastgit.org/ScoopInstaller/Main.git git -C "${Env:USERPROFILE}\scoop\buckets\java" remote set-url origin https://hub.fastgit.org/ScoopInstaller/Java.git git -C "${Env:USERPROFILE}\scoop\buckets\php" remote set-url origin https://hub.fastgit.org/ScoopInstaller/PHP.git git -C "${Env:USERPROFILE}\scoop\buckets\versions" remote set-url origin https://hub.fastgit.org/ScoopInstaller/Versions.git git -C "${Env:USERPROFILE}\scoop\buckets\nightlies" remote set-url origin https://hub.fastgit.org/ScoopInstaller/Nightlies.git # 以此类推 extras 的为 git -C "${Env:USERPROFILE}\scoop\buckets\extras" remote set-url origin https://hub.fastgit.org/lukesampson/scoop-extras.git

上面的方式首先要执行scoop bucket add 仓库名将bucket安装到本地,然后执行上面的命令更改git仓库的远程地址,所以在add bucket时本身可能因为网络问题就添加失败。下面的方式将更简便

scoop bucket add java https://hub.fastgit.org/ScoopInstaller/Java.git scoop bucket add php https://hub.fastgit.org/ScoopInstaller/PHP.git scoop bucket add versions https://hub.fastgit.org/ScoopInstaller/Versions.git scoop bucket add nightlies https://hub.fastgit.org/ScoopInstaller/Nightlies.git scoop bucket add extras https://hub.fastgit.org/lukesampson/scoop-extras.git

3|0使用

3|1基本使用

如果只是安装给当前用户,直接执行安装命令即可,会安装到之前说的当前用户安装目录中,比如

# scoop install [app]@[版本号] scoop install git@2.23.0.windows.1

如果想要全局安装,安装时需要带 -g 参数,会安装到之前说的全局安装目录。以管理员身份打开PowerShell

# scoop install -g [app]@[版本号] scoop install -g git@2.23.0.windows.1

如果全局安装时不想以管理员身份运行PowerShell,则可以安装sudo,然后在普通身份时也可以对全局进行操作:

scoop install -g sudo # 此时以管理员身份打开的Powershell sudo scoop install -g git # 此时普通身份亦可

当然也可以一次安装多个软件

sudo scoop install 7zip git openssh --global scoop install aria2 curl grep sed less touch scoop install python ruby go perl

7Zip,Git基本是必须要装的,因为要装很多软件都要依赖它们,连添加bucket都要git的。
另外aria2也可以装上,因为说是可以提高软件包下载速度。如果使用aria2任然速度慢或者出现无法下载的问题,可以使用如下命令将其禁用:

scoop config aria2-enabled false

3|2多版本切换

scoop resetre-installs 应用程序的 shims ,并根据应用程序的 manifest 更新 PATH 环境变量。

使用 scoop reset <java>[@<version>] 说明安装和切换不同的 Java (JDK)版本

$ scoop bucket add java $ scoop install oraclejdk Installing 'oraclejdk' (12.0.2-10) [64bit] $ scoop install zulu6 Installing 'zulu6' (6.18.1.5) [64bit] $ scoop install openjdk10 Installing 'openjdk10' (10.0.1) [64bit] $ java -version openjdk version "10.0.1" 2018-04-17 OpenJDK Runtime Environment (build 10.0.1+10) OpenJDK 64-Bit Server VM (build 10.0.1+10, mixed mode) $ scoop reset zulu6 Resetting zulu6 (6.18.1.5). Linking ~\scoop\apps\zulu6\current => ~\scoop\apps\zulu6\6.18.1.5 $ java -version openjdk version "1.6.0-99" OpenJDK Runtime Environment (Zulu 6.18.1.5-win64) (build 1.6.0-99-b99) OpenJDK 64-Bit Server VM (Zulu 6.18.1.5-win64) (build 23.77-b99, mixed mode) $ scoop reset oraclejdk $ java -version java version "12.0.2" 2019-07-16 Java(TM) SE Runtime Environment (build 12.0.2+10) Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)

Python版本管理

$ scoop bucket add versions # add the 'versions' bucket if you haven't already $ scoop install python27 python python --version # -> Python 3.6.2 # switch to python 2.7.x $ scoop reset python27 python --version # -> Python 2.7.13 # switch back (to 3.x) $ scoop reset python python --version # -> Python 3.6.2

3|3添加自定义bucket

参考 https://zhuanlan.zhihu.com/p/165635039

3|4社区仓库

参考 https://sspai.com/post/52710

3|5其他命令

命令 说明
scoop help 查看帮助
scoop list 可以查看已安装的所有软件
scoop search 软件名 查找是否有你需要的软件
scoop info 软件名 查看软件介绍
scoop uninstall 软件名 卸载软件
scoop status 查看可更新的软件
scoop update 软件名 更新软件
scoop update * 一次性更新所有软件(必须在安装目录下使用)
scoop update 更新scoop,有时当你安装或其他操作时scoop会自行更新自己,由于软件数量和版本极多,更新频率会有点高
scoop bucket add bucket名称 添加bucket
scoop bucket add bucket名称 bucket地址 添加自定义bucket
scoop bucket known 列出已知所有官方bucket

4|0卸载

scoop uninstall scoop # 这个卸载,会删除你配置的scoop下面的所有软件,非常危险。

__EOF__

本文作者fortuneju
本文链接https://www.cnblogs.com/fortuneju/p/14701121.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   fortuneju  阅读(6175)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示