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. dotnet 冒泡排序

    // See https://aka.ms/new-console-template for more information using ConsoleApp1; Console.WriteLine ...

  2. 01-react的基本使用

    // 导入react和react-dom包 类似 vue 中的 import vue from 'vue' import react from 'react' // 内部的组件 import reac ...

  3. Vue中mixins(混入)的介绍和使用

    为什么引进 mixins 随着项目的开发,组件越来越多 ,这就导致了在各个组件中需要编写功能相同的代码段,重复地定义这些相同的属性和方法,导致代码地冗余,还不利于后期代码的维护 混入mixins 的创 ...

  4. Android复习(三)清单文件中的元素——>uses-sdk

    <uses-sdk> Google Play 会利用在应用清单中声明的 <uses-sdk> 属性,从不符合其平台版本要求的设备上滤除您的应用.在设置这些属性前,请确保您了解  ...

  5. SpringBoot进阶教程(八十二)Spring Security图形验证码

    在之前的博文<SpringBoot进阶教程(八十)Spring Security>中,已经介绍了在Spring Security中如何基于formLogin认证.基于HttpBasic认证 ...

  6. 基于 KubeSphere 的应用容器化在智能网联汽车领域的实践

    公司简介 某国家级智能网联汽车研究中心成立于 2018 年,是担当产业发展咨询与建议.共性技术研发中心.创新成果转化的国家级创新平台,旨在提高我国在智能网联汽车及相关产业在全球价值链中的地位. 目前着 ...

  7. 常见APR攻击及其防护

    0x01 什么是ARP 地址解析协议--ARP:是根据IP地址获取物理地址的一个TCP/IP协议.主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的 ...

  8. 如何阅读 CPU 电路图(以 6502 为例)

    开篇 你是否曾对 CPU 的工作原理充满好奇,以及简单的晶体管又是如何组成逻辑门,进而构建出复杂的逻辑电路实现?本文将以知名的 6502 CPU 的电路图为例,介绍如何阅读 CPU 电路图,并向你演示 ...

  9. C# 将PDF文档转换为Markdown文档

    将PDF文件转换为Markdown格式是一个非常实用的需求,尤其是在需要将内容从固定布局的PDF文件中提取出来,并转换为更易于编辑和处理的文本格式时.本文将介绍如何通过C#代码将PDF文档转换Mark ...

  10. C++ stl锁的使用

    我们在日常开发中经常要用到锁,这里记录一下实际开发过程中stl提供的锁的使用. 1.读写锁 读写锁算是用到的比较多的一种类型,主要实现对于同一个共享数据区,一个时间点只能有一个线程进行写(增删改),但 ...