Scoop: 开发者多环境管理利器
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: 开发者多环境管理利器的更多相关文章
- 推荐几个IDEA插件,Java开发者撸码利器(转载)
推荐几个IDEA插件,Java开发者撸码利器. 这里只是推荐一下好用的插件,具体的使用方法不一一详细介绍. JRebel for IntelliJ 一款热部署插件,只要不是修改了项目的配置文件,用 ...
- dubbo服务接口开发者必备调试利器,你值得拥有
dubbo服务接口开发者必备调试利器,你值得拥有 学习了:https://my.oschina.net/vboxtop/blog/1524290 找到了:http://www.vbox.top/?fr ...
- 推荐几个IDEA插件,Java开发者撸码利器。
这里只是推荐一下好用的插件,具体的使用方法不一一详细介绍. JRebel for IntelliJ 一款热部署插件,只要不是修改了项目的配置文件,用它都可以实现热部署.收费的,破解比较麻烦.不过功能确 ...
- 开发环境管理利器Vagrant
引言 不知道你是否经历过,开发环境与生产环境不一致.Windows开发和Linux上的包效果不一样.在我这运行时好的啊 等等等问题,那有没有解决方法呢? 答案就是Vagrant.Docker 1.简介 ...
- <转>如何将Chrome变成开发利器,开发者们在用这些插件
Chrome 浏览器具有强大的跨平台能力以及丰富的扩展插件,一直是许多开发者的首要选择.而利用许多 Chrome 插件,开发者们在开发流程中能够极大地提高开发效率.我们就整理了十款开发者常用的 Chr ...
- 十款开发者常用的Chrome插件,让chrome成为开发利器!
Chrome浏览器无论是作为浏览器市场的NO1还是其强大的跨平台能力以及丰富的扩展插件,一直是许多开发者的首要选择的浏览器.chrome浏览器也因为其丰富的Chrome插件,帮助开发者们在开发流程中极 ...
- chrome谷歌浏览器-DevTool开发者工具-详细总结
目录: 一.概述 1.官方文档 2.打开方法: 3.前言: 二.九个模块: 1.设备模式Device Mode 2.元素面板Elements 3.控制台面板Console 4.源代码面板Sources ...
- DevTool开发者工具
DevTool开发者工具 chrome的开发者工具可以说是十分强大了,是web开发者的一大利器,作为我个人而言平时用到的几率很大,相信大家也很常见,但是不要仅仅停留在点选元素看看样式的层面上哦,跟着我 ...
- 开发者常用的十款Chrome插件
本文是稀土掘金投稿,虽然其中有倔金的私货,是篇推广文,但我看过后认为内容确实不错,有些好插件还是第一次知道,对我很有帮助,考虑过后还是决定推荐给大家,最近我比较关注各种提高开发效率的工具与技巧,今后看 ...
- iOS 之 Cocoapods安装
进入正题前,先来点前奏:了解cocoapods是某天看一个博客,那时才明白原来写项目不用一个个将三方库拷进项目里啊,惊讶的我是一塌糊涂的啊...(原谅我那时还没进入过正规的IT公司....好多你们自然 ...
随机推荐
- kotlin函数和Lambda表达式——>高阶函数与lambda表达式
1.高阶函数 高阶函数是将函数用作参数或返回值的函数. 一个不错的示例是集合的函数式⻛格的 fold,它接受一个初始累积值与一个接合函数,并通过将当前 累积值与每个集合元素连续接合起来代入累积值来构建 ...
- NTPShell
NTPShell 获取地址:https://github.com/aplyc1a/NTPShell 通过NTP协议来负载C2数据. 编译 gcc ntp.c -lpthread -o ntp 使用 c ...
- .NET周刊【10月第3期 2024-10-20】
国内文章 我被 .NET8 JIT 的一个BUG反复折磨了半年之久(JIT tier1 finally optimizations) https://www.cnblogs.com/calvinK/p ...
- 远程连接服务器时出现“这可能是由于CredSSP加密数据库修正”的错误提示的解决办法
当我们远程连接服务器时,有时候会出现以下提示,从而导致我们无法成功连接服务器,如下所述: 原因: 远程桌面使用的是"凭据安全支持提供程序协议 (CredSSP) ",这个协议在未修 ...
- NOIP2024模拟赛7:纯粹当下
NOIP2024模拟赛7:纯粹当下 今日挂分:95pts...... T2 \(T\) 组数据, 每组给定 \(n,k,f,a_i\), 一个序列 \(b\) 满足 \(b_i \in [a_i-k, ...
- MySQL,你只需看这一篇文章就够了!
MySQL--DAY02 distinct 去重 把查询结果去除重复记录[distinct] 注意:原表数据不会被修改,只是查询结果去重. 去重需要使用一个关键字:distinct mysql> ...
- C++处理系统相关权限问题
1.给某个文件或文件夹赋予特定用户的特定访问权限 /* 给文件(夹)szPath设置用户名为pszAccount的可读可写可修改权限 */ bool GiveTheAccountPrivToFile( ...
- img标签src引用网络图片,响应403的解决方法
在html页面加入<meta name="referrer" content="no-referrer">标签,就可以解决页面加载网络图片的问题, ...
- python报错:If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0
相关: https://stackoverflow.com/questions/72441758/typeerror-descriptors-cannot-not-be-created-directl ...
- ThreadLocal源代码分析
最早接触ThreadLocal这个东东,还是在学Hibernate的时候,当时看ThreadLocal没明白是干什么的,后来在网上查才明白ThreadLocal的用途,ThreadLocal其实蛮有用 ...