一键更换软件源的工具——chsrc

news2024/11/16 3:44:10

前言

经常用pip,ubuntu的apt,或者centos的yum等包下载工具的人不可避免的一件事就是——“更换软件源”,因为以上三个包下载工具的软件源一般都是默认为国外的官方网站,由于国情问题,下载速度就会非常慢,所以我们使用这些包下载工具都会换源,但是更换软件源是一个比较麻烦的步骤,而且每个不同的包下载器的配置方法都是不一定相同的,通常我可以用以下的步骤概括一下

  1. 上网搜索相关的教程,找到想要更换的对应包下载工具软件源的方法
  2. 找到下载速度比较快,而且稳定的镜像站
  3. 找到包下载工具的配置文件,进行更改

而且不同的包下载工具,上面的步骤都是不一样的,所以就存在以下的痛点了

  1. 不同镜像站的下载速度你要自己测量,很麻烦
  2. 不同包下载工具的配置文件的存放位置与修改方法都是异构的
  3. 在网上找教程经常会遇到互联网垃圾,遇到一个个过滤

于是!🤓我就找到了一个很好用的换源工具——chsrc,这个命令行工具完美解决了以上的痛点,并且支持绝大多数的包下载器与系统换源(下面展示)

效果图

还是老规矩,好不好用,直接看图说话,说再多都是虚的😊。

可用对象

可用镜像站和可换源目标有很多,不过对我来说比较常用的就几个,pip ,ubuntu,npm,conda,anaconda

D:\kashima19960.github.io>chsrc list
指定使用某源,请使用 chsrc set <target> <code>
可用镜像站: 

  code         镜像站简写                  镜像站URL                              镜像站
---------    --------------    -------------------------------------     ---------------------
mirrorz       MirrorZ           https://mirrors.cernet.edu.cn/            MirrorZ 校园网镜像站
tuna          TUNA              https://mirrors.tuna.tsinghua.edu.cn/     清华大学开源软件镜像站
sjtu          SJTUG-zhiyuan     https://mirrors.sjtug.sjtu.edu.cn/        上海交通大学致远镜像站
zju           ZJU               https://mirrors.zju.edu.cn/               浙江大学开源软件镜像站
lzu           LZUOSS            https://mirror.lzu.edu.cn/                兰州大学开源社区镜像站
jlu           JLU               https://mirrors.jlu.edu.cn/               吉林大学开源镜像站
bfsu          BFSU              https://mirrors.bfsu.edu.cn/              北京外国语大学开源软件镜像站
pku           PKU               https://mirrors.pku.edu.cn/               北京大学开源镜像站
bjtu          BJTU              https://mirror.bjtu.edu.cn/               北京交通大学自由与开源软件镜像站
sustech       SUSTech           https://mirrors.sustech.edu.cn/           南方科技大学开源软件镜像站
ustc          USTC              https://mirrors.ustc.edu.cn/              中国科学技术大学开源镜像站
hust          HUST              https://mirrors.hust.edu.cn/              华中科技大学开源镜像站
nju           NJU               https://mirrors.nju.edu.cn/               南京大学开源镜像站
ali           Ali OPSX          https://developer.aliyun.com/mirror/      阿里巴巴开源镜像站
tencent       Tencent           https://mirrors.tencent.com/              腾讯软件源
huawei        Huawei Cloud      https://mirrors.huaweicloud.com/          华为开源镜像站
volc          Volcengine        https://developer.volcengine.com/mirror/  火山引擎开源软件镜像站
netease       Netease           https://mirrors.163.com/                  网易开源镜像站
sohu          SOHU              https://mirrors.sohu.com/                 搜狐开源镜像站
api7          api7.ai           https://www.apiseven.com/                 深圳支流科技有限公司
fit2cloud     FIT2CLOUD         https://www.fit2cloud.com/                杭州飞致云信息科技有限公司
rubychina     RubyChina         https://gems.ruby-china.com/              Ruby China 社区
emacschina    EmacsChina        https://elpamirror.emacs-china.org/       Emacs China 社区
npmmirror     npmmirror         https://npmmirror.com/                    npmmirror (阿里云赞助)
goproxy.cn    Goproxy.cn        https://goproxy.cn/                       Goproxy.cn (七牛云)
goproxy.io    GOPROXY.IO        https://goproxy.io/                       GOPROXY.IO

支持对以下目标换源 (同一行表示这几个命令兼容)

编程语言
-------------------------
gem     ruby    rubygem rb      rubygems        bundler
pip     python  pypi    py      poetry  pdm
npm     node    nodejs  js      yarn    pnpm
perl    cpan
php     composer
lua     luarocks
rust    cargo   crate   crates
go      golang  goproxy
java    maven   mvn     gradle
clojure clojars cloj    lein    leiningen
dart    pub     flutter
haskell cabal   stack   hackage
ocaml   opam
cran    r
julia

操作系统
-------------------------
debian
ubuntu
linuxmint       mint
kali
trisquel
lite    linuxlite
raspi   raspberrypi
armbian
openwrt opkg    LEDE
deepin
openkylin
ros     ros2
fedora
rocky   rockylinux
alma    almalinux
openeuler
openanolis      anolis
opensuse
arch    archlinux
archlinuxcn     archcn
manjaro
gentoo
alpine
void    voidlinux
solus
msys2   msys
freebsd
netbsd
openbsd

软件
-------------------------
winget
brew    homebrew
cocoa   cocoapods       pod     cocoapod
dockerhub       docker
flathub flatpak
nix
guix
emacs   elpa
latex   ctan    tex     texlive miktex  tlmgr   mpm
conda   anaconda

测速功能

chsrc能一键帮你测试所有镜像站的连接速度,并且给出最高值
在这里插入图片描述

一键换源

chsrc能在测量镜像站速度后,自己替你更换速度最快的源

在这里插入图片描述

安装与使用

安装

作者都打包到了一个exe文件(windows系统)或者一个shell脚本中(linux系统),因此下载后就能立刻使用了,不需要安装,根据自己的系统下载对应的版本即可Release v0.1.8 · RubyMetric/chsrc (github.com),如果你访问不了github,那就通过国内的gitee下载v0.1.8 · RubyMetric/chsrc - Gitee.com。下面我介绍一种从来没接触过命令行的萌新的安装方法,大佬的话,建议直接看官方文档

chsrc是一个命令行工具,想要使用必须在命令行中调用,但是下载完后,直接在命令行敲chsrc是没有用的,因为shell无法搜索到这个路径(这个解释起来会是长篇大论,因此这里跳过)

在这里插入图片描述

有两种方法,能让你调用到这个工具

  1. 进入到这个工具所在的根目录,比如我把工具下载到了D:\temp下

在这里插入图片描述

在命令行界面,我们cd进去更改目录到工具的根目录

在这里插入图片描述

然后执行

.\chsrc-x64-windows.exe

这个.\是不能省略的,表示当前目录的意思,如果是Linux系统的话,要用斜杠./
在这里插入图片描述

  1. 添加环境变量

D:\temp(这里改成你的chsrc的安装位置),添加到环境变量中,这样就不需要在工具所在目录使用了,其他系统怎么添加环境变量,自行百度

在这里插入图片描述
在这里插入图片描述

说起来,这个chsrc-x64-windows.exe名字太长了,你可以直接改个名字叫chsrc.exe
在这里插入图片描述

这样在命令行就不用敲那么长的名字了
在这里插入图片描述

使用

chsrc有以下的使用方法,看似很多,其实常用的就两三个

D:\kashima19960.github.io>chsrc
chsrc: Change Source (GPLv3+) v0.1.8-2024/08/23 by RubyMetric

使用: chsrc <command> [options] [target] [mirror]
help                      打印此帮助,或 h, -h, --help
issue                     查看相关issue

list (或 ls, 或 l)        列出可用镜像源,和可换源目标
list mirror/target        列出可用镜像源,或可换源目标
list os/lang/ware         列出可换源的操作系统/编程语言/软件

measure <target>          对该目标所有源测速
cesu    <target>

list <target>             查看该目标可用源与支持功能
get  <target>             查看该目标当前源的使用情况

set  <target>             换源,自动测速后挑选最快源
set  <target>  first      换源,使用维护团队测速第一的源
set  <target> <mirror>    换源,指定使用某镜像站 (通过list <target>查看)
set  <target> https://url 换源,用户自定义源URL
reset <target>            重置,使用上游默认使用的源

选项:
-dry                      Dry Run,模拟换源过程,命令仅打印并不运行
-ipv6                     使用IPv6测速
-local                    仅对本项目而非全局换源 (通过ls <target>查看支持情况)
-en(glish)                使用英文输出
-no-color                 无颜色输出

维护: <https://github.com/RubyMetric/chsrc>
  1. chsrc list,列出所有可用源,效果图中已经演示过
  2. chsrc set <target> <code>,这个target指的是chsrc list列出的目标,比如pip,ubuntu,conda之类的,这个code一般指镜像站的url或者代号,不指定的话,就会测量出速度最快的镜像站,然后设置成该镜像站的软件源

在这里插入图片描述

  1. chsrc reset <target> <code>,用法跟chsrc set类似,用来重置软件源,比如重置pip为官方的软件源

在这里插入图片描述

结语

本文旨在分享好用的开源软件,如果你觉得这个换源工具很好用,请多多支持原作者和这个开源项目!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2142437.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为OD机试 - 最大矩阵和 - 卡德恩算法(动态规划)(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 2024E卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试真题&#xff08;Python/JS/C/C&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;私信哪吒&#xff0c;备注华为OD&#xff0c;加入华为OD刷题交流群&#xff0c;…

线性代数(宋浩版)(4)

2.4逆矩阵 &#xff08;不要把矩阵放在分母上&#xff09; 方阵的行列式 性质1 性质2 性质3 伴随矩阵&#xff08;只有方阵才有&#xff09; 1.求出所有元素的代数余子式&#xff08;矩阵先求行列式&#xff09;。 2.按行求的代数余子式按列放。 定理1&#xff08;重要&…

MySQL篇(窗口函数/公用表达式(CTE))

目录 讲解一&#xff1a;窗口函数 一、简介 二、常见操作 1. sumgroup by常规的聚合函数操作 2. sum窗口函数的聚合操作 三、基本语法 1. Function(arg1,..., argn) 1.1. 聚合函数 sum函数&#xff1a;求和 min函数 &#xff1a;最小值 1.2. 排序函数 1.3. 跨行函数…

ECMAScript与JavaScript的区别

目录 一、什么是ECMAScript&#xff1f; 二、什么是JavaScript&#xff1f; 三、ECMAScript与JavaScript的关系 3.1 ECMAScript规范版本 3.2 JavaScript的实现 四、ECMAScript与JavaScript的主要区别 4.1 规范与实现的区别 4.2 版本更新 4.3 环境支持 4.4 语言特性 五…

C# 使用Socket通信,新建WinForm服务端、客户端程序

一、新建WinForm Socket服务端程序 注&#xff1a;rtbReceviceMsg为RichTextBox控件 服务端程序、界面 服务端代码 public partial class Form1 : Form {public Form1(){InitializeComponent();}public virtual void TriggerOnUpdateUI(string message){if (this.InvokeRequir…

【SpringCloud】服务注册与发现 - Eureka

目录 服务注册/服务发现-Eureka背景问题描述解决思路什么是注册中心CAP 理论常见的注册中心 Eureka 介绍搭建Eureka Server创建Eureka-server 子模块引入eureka-server依赖项目构建插件完善启动类编写配置文件启动服务 服务注册引入eureka-client依赖完善配置文件启动服务 服务…

如图,从左到右在每个小格子中填入一个整数,使得其中任意三个相邻格子中所填整数之和都相等,若前m个格子中所填整数之和是2024,则m的值为?

1、如果图&#xff1a; 任务三个相邻的格子中所填整数之和都相等&#xff0c;则可以列个几个式子&#xff1a; 9ab abcbc(-5)c(-5)1 则可以求出&#xff1a; a-5&#xff0c;b1&#xff0c;c9 2、前m个格子中所填数之和是2024&#xff0c;则表示9abc(-5)1...第m个格子2024 …

LaTex2024 下载安装运行HelloWorld—全流程笔记

LaTex安装教程&#x1f680; 这是读博之后写的第一篇文章&#xff0c;来到新课题组之后&#xff0c;新课题组主要是用Latex&#xff0c;在之前的课题组&#xff0c;还是比较常用world&#xff0c;所以就研究了一下Latex的下载和安装&#xff0c;虽然网上已经有了不少教程&#…

编程基础:函数栈帧的创建和销毁

函数栈帧的创建和销毁 一、什么是函数栈帧二、常见的寄存器三、函数指令三、函数栈帧的创建和销毁&#xff08;一&#xff09;普通值传递1、开始执行函数2、main函数的函数栈帧的开辟&#xff08;1&#xff09;main 栈帧空间的开辟和默认初始化&#xff08;2&#xff09;main 局…

S-Procedure的基本形式及使用

理论 Lemma 1. ( S- Procedure[ 34] ) : Define the quadratic func- \textbf{Lemma 1. ( S- Procedure[ 34] ) : Define the quadratic func- } Lemma 1. ( S- Procedure[ 34] ) : Define the quadratic func- tions w.r.t. x ∈ C M 1 \mathbf{x}\in\mathbb{C}^M\times1 x…

Leetcode—815. 公交路线【困难】(unordered_map+queue)

2024每日刷题&#xff08;163&#xff09; Leetcode—815. 公交路线 bfs实现代码 class Solution { public:int numBusesToDestination(vector<vector<int>>& routes, int source, int target) {if(source target) {return 0;}unordered_map<int, vector…

如何用安卓玩Java版Minecraft,安卓手机安装我的世界Java版游戏的教程

安卓手机使用FCL启动器安装我的世界Java版游戏的教程。如何用安卓玩Java版Minecraft 视频教程&#xff1a;https://www.bilibili.com/video/BV1CctYebEzR/ 前言 目前&#xff0c;安卓设备上可以用来运行Java版Minecraft的启动器主要有以下几款&#xff1a; PojavLauncher&a…

Matlab-Matpower制作IEEE14-电力虚假数据注入攻击FDIA数据集

文章目录 1. 加载Matpower-IEEE14电力数据2. 导入原始数据集两个数据集结合的意义潮流分析和状态估计的意义 3. 初始化变量4. 分离有功和无功功率4. 潮流计算5. 生成测量向量6. 选择是否篡改数据7. 状态估计和雅可比矩阵8. 保存未篡改数据9. 篡改数据生成FDIA仿真数据集完整代码…

硬件工程师笔试面试——显示器件

目录 14、显示器件 14.1 基础 显示器件实物图 14.1.1 概念 14.1.2 工作原理 14.1.3 性能参数 14.1.4 应用领域 14.2 相关问题 14.2.1 液晶显示器(LCD)和有机发光二极管 (OLED)显示器在性能上有哪些主要区别? 14.2.2 在设计显示器时,如何平衡分辨率和刷新率以满足不…

C#:强大编程语言的多面魅力

C#&#xff1a;强大编程语言的多面魅力 一、C# 语言的特点与优势 &#xff08;一&#xff09;简洁的语法与精心设计 C# 在继承 C 和 C 的强大功能的同时&#xff0c;去掉了一些复杂特性&#xff0c;如宏和多重继承&#xff0c;使得语言更加简洁易懂。C# 是一种面向对象的语言…

根文件夹下文件重复检测

功能介绍&#xff1a;在传入Windows路径后&#xff08;例如“D:\小米云服务下载”&#xff09;&#xff0c;遍历文件夹下所视频有文件&#xff08;包括子文件夹下的视频文件&#xff0c;其他类型不做判断&#xff09;&#xff0c;判断视频文件是否重复&#xff08;由于视频文件…

运筹说 第125期 | 存储论经典例题讲解1

通过前几期的学习&#xff0c;我们已经学会了存储论的基本概念、确定型存储模型、单周期的随机型存储模型、其他的随机型存储模型以及存储论应用研究中的一些问题。在实际工作中&#xff0c;我们能发现存储论在能源行业中有着许多应用&#xff0c;本期小编选择了其中一些确定型…

错误: 找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain

安装 zookeeper-3.8.4 版本的时候&#xff0c;启动zk打印如下错误日志 错误: 找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain后面查了下发现 zookeeper 3.5.5 版本以后&#xff0c;已编译的 jar 包&#xff0c;尾部有 bin下载的时候应该下载 编译后…

裸土检测算法实际应用、裸土检测算法样本、裸土检测算法精准检测

裸土检测算法是一种前沿的图像识别技术&#xff0c;它通过利用先进的图像处理技术和机器学习算法&#xff0c;从卫星图像、无人机拍摄的图像或其他地面监测数据中提取出裸土区域&#xff0c;并对其进行精确的分类和分析。 与传统的地面勘察方法相比&#xff0c;裸土检测算法具有…

1. YOLOv10: Real-Time End-to-End Object Detection

一、全文概述 文章主要介绍了YOLOv10在实时端到端目标检测方面的改进和创新。简要概述&#xff1a; 1.1 背景与挑战&#xff1a; 实时目标检测在计算机视觉领域具有重要意义&#xff0c;广泛应用于自动驾驶、机器人导航等场景。YOLO系列因其在性能和效率之间的有效平衡而受到…