Scoop是什么?

Scoop 是一个基于 Windows 的包管理器,能够帮助开发者高效管理开发环境和应用程序。

它推荐通过命令行进行包的安装、更新和卸载,同时提供了简单易用的包组织方式,透明化了安装和管理的过程。

与传统的 Windows 应用安装比较,Scoop 允许用户使用命令行将应用安装到用户的个人目录中,消除了系统管理员权限的需求。

来看看我本地安装的应用。

Scoop的几个核心概念

Bucket (桶)

Bucket 是 Scoop 中用于存储应用包配置文件 (如 JSON 文件) 的地方。举一个例,main 是 Scoop 默认的主 Bucket,还有丰富的社区共享 Bucket,如 extras,包含了更多的应用。 添加新的 Bucket:

scoop bucket add extras
App (应用)

App 是 Scoop 的核心,它指的是安装和管理的应用程序,比如 Python,.NET,Node.js等。

程序根目录

Scoop 通常将应用安装在 ~/scoop/apps/ 目录中,便于用户进行独立管理。可以通过以下命令查看安装路径:

scoop prefix <app-name>
Version (版本管理)

Scoop 支持同一应用的多版本管理,通过切换功能可以随时切换用户需要的版本。

多版本管理的原理

Scoop 的多版本管理通过应用根目录中的不同子目录实现,每个版本都保存在独立的目录中:

~/scoop/apps/<app-name>/<version>

通过设置连接 (如 current 连接),Scoop 可以日常指导到指定版本:

~/scoop/apps/<app-name>/current -> <version>

这样,用户可以随时切换版本,而不需要重新安装。

安装Scoop

透过以下命令安装

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

怎么安装包:以 .NET 和 Python 举例

安装 version

透过 Scoop 安装 versions,versions用来管理旧版本的应用:

scoop bucket add version
安装 .NET

透过 Scoop 安装 .NET:

scoop install dotnet-sdk

验证安装:

dotnet --version
安装两个版本的 .NET

安装特定版本:

scoop install dotnet6-sdk
scoop install dotnet7-sdk

切换版本:

scoop reset dotnet6-sdk
scoop reset dotnet7-sdk
安装 Python

透过 Scoop 安装 Python:

scoop install python

验证安装:

python --version
安装两个版本的 Python

安装特定版本:

scoop install python27
scoop install python310

切换版本:

scoop reset python27
scoop reset python310

Scoop 的更新操作

更新 Scoop 自身

使用以下命令更新 Scoop:

scoop update
更新所有已安装的包

更新所有已安装包到最新版本:

scoop update *
更新特定的包

如果只需要更新某个特定包,例如 Python:

scoop update python

常见配置和问题解决

设置全局安装路径

如果需要为所有用户配置全局安装路径,可以修改 Scoop 的配置:

scoop config global_path true
环境变量冲突

切换不同版本的应用时,可能会遇到环境变量冲突。通过以下命令重置环境变量:

scoop reset <app-name>
清理过时版本

清理应用的旧版本以节省磁盘空间:

scoop cleanup <app-name>

通过 Scoop 快速搭建开发环境

利用 Scoop,可以快速搭建一个开发环境。例如:

安装 VS Code
scoop install vscode
安装 Node.js
scoop install nodejs
安装 Git
scoop install git

通过这些简单的命令,您可以快速构建一个功能齐全的开发环境。

Scoop: 开发者多环境管理利器的更多相关文章

  1. 推荐几个IDEA插件,Java开发者撸码利器(转载)

    推荐几个IDEA插件,Java开发者撸码利器.   这里只是推荐一下好用的插件,具体的使用方法不一一详细介绍. JRebel for IntelliJ 一款热部署插件,只要不是修改了项目的配置文件,用 ...

  2. dubbo服务接口开发者必备调试利器,你值得拥有

    dubbo服务接口开发者必备调试利器,你值得拥有 学习了:https://my.oschina.net/vboxtop/blog/1524290 找到了:http://www.vbox.top/?fr ...

  3. 推荐几个IDEA插件,Java开发者撸码利器。

    这里只是推荐一下好用的插件,具体的使用方法不一一详细介绍. JRebel for IntelliJ 一款热部署插件,只要不是修改了项目的配置文件,用它都可以实现热部署.收费的,破解比较麻烦.不过功能确 ...

  4. 开发环境管理利器Vagrant

    引言 不知道你是否经历过,开发环境与生产环境不一致.Windows开发和Linux上的包效果不一样.在我这运行时好的啊 等等等问题,那有没有解决方法呢? 答案就是Vagrant.Docker 1.简介 ...

  5. <转>如何将Chrome变成开发利器,开发者们在用这些插件

    Chrome 浏览器具有强大的跨平台能力以及丰富的扩展插件,一直是许多开发者的首要选择.而利用许多 Chrome 插件,开发者们在开发流程中能够极大地提高开发效率.我们就整理了十款开发者常用的 Chr ...

  6. 十款开发者常用的Chrome插件,让chrome成为开发利器!

    Chrome浏览器无论是作为浏览器市场的NO1还是其强大的跨平台能力以及丰富的扩展插件,一直是许多开发者的首要选择的浏览器.chrome浏览器也因为其丰富的Chrome插件,帮助开发者们在开发流程中极 ...

  7. chrome谷歌浏览器-DevTool开发者工具-详细总结

    目录: 一.概述 1.官方文档 2.打开方法: 3.前言: 二.九个模块: 1.设备模式Device Mode 2.元素面板Elements 3.控制台面板Console 4.源代码面板Sources ...

  8. DevTool开发者工具

    DevTool开发者工具 chrome的开发者工具可以说是十分强大了,是web开发者的一大利器,作为我个人而言平时用到的几率很大,相信大家也很常见,但是不要仅仅停留在点选元素看看样式的层面上哦,跟着我 ...

  9. 开发者常用的十款Chrome插件

    本文是稀土掘金投稿,虽然其中有倔金的私货,是篇推广文,但我看过后认为内容确实不错,有些好插件还是第一次知道,对我很有帮助,考虑过后还是决定推荐给大家,最近我比较关注各种提高开发效率的工具与技巧,今后看 ...

  10. iOS 之 Cocoapods安装

    进入正题前,先来点前奏:了解cocoapods是某天看一个博客,那时才明白原来写项目不用一个个将三方库拷进项目里啊,惊讶的我是一塌糊涂的啊...(原谅我那时还没进入过正规的IT公司....好多你们自然 ...

随机推荐

  1. 封装JWT - 生成 jwt 和解析 jwt

    1. ASP.NET Core 身份验证和授权验证的功能由Authentication,Authorization中间件提供 :app.UseAuthentication(),app.UseAutho ...

  2. 实战!oracle 11g一键安装脚本分享

    分享一个常用的数据库一键安装脚本,大家可以从我的网盘进行下载 链接: https://pan.baidu.com/s/1iV-0zeXrwhJxJcm9qA_P_g 提取码: apbc 脚本内容: # ...

  3. Vmware挂载san存储_vSphere 6.x 共享存储LUN丢失分区表修复(精华)

    Vmware挂载san存储_vSphere 6.x 共享存储LUN丢失分区表修复 炎炎夏夜客户机房空调意外故障,前端ESXI物理服务器由于温度过高都自保关机,存储和SAN没有自保关机.上班修复空调后, ...

  4. 4收4发ARINC429模块

    USB 2.0 Hi-Speed (480Mbits /s)* 发送通道:每路发送通道FIFO大小为511 x 32bit(CHR32904)  缓存256条发送消息(CHR32904-EX)发送FI ...

  5. 云原生爱好者周刊:KubeKey v2.1.0 alpha 版发布!

    KubeKey v2.1.0-alpha.0 发布啦!该版本的主要特性: 支持三种使用场景的 Etcd 集群(二进制部署,Kubeadm 部署,连接外置已存在的 Etcd 集群). 支持部署 Cont ...

  6. 采用线性回归实现训练和预测(Python)

    已知测得某块地,当温度处于15至40度之间时,数得某块草地上小花朵的数量和温度值的数据如下表所示.现在要来找出这些数据中蕴含的规律,用来预测其它未测温度时的小花朵的数量. 测得数据如下图所示: imp ...

  7. STM32单片机 32.768Khz和8Khz晶振外部电容容值选取问题

    一.前言 绘制STM32C8T6最小系统的晶振电路的时候,看到了并联在晶振两端的电容,就好奇具体的容值该怎么选取,故有了这篇博客. 二.外部晶振电路

  8. 使用wxpython开发跨平台桌面应用,基类列表窗体的抽象封装处理

    在开发一套系统框架的时候,除了关注实现系统的功能实现外,我们对于系统的各个方面都是应该精益求精,以最少的编码做最好的事情,在开发的各个层次上,包括前端后端,界面处理.后端处理.常用辅助类.控件封装等等 ...

  9. 题解:CF1537E2 Erase and Extend (Hard Version)

    CF1537E2 Erase and Extend 题解 分析 通过观察题目,可以证明结果一定是由多次前缀复制得来的. 题目要求你进行删和复制的操作,与其交替着操作,不如直接先删到最优的前缀再进行复制 ...

  10. 7.Kubernetes集群YAML文件详解

    Kubernetes集群YAML文件详解 概述 k8s 集群中对资源管理和资源对象编排部署都可以通过声明样式(YAML)文件来解决,也就是可以把需要对资源对象操作编辑到YAML 格式文件中,我们把这种 ...