Cygwin下面,apt-cyg的使用方法和基本原理

2024-05-03 22:48

本文主要是介绍Cygwin下面,apt-cyg的使用方法和基本原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装完Cygwin之后,里面的软件已经固定那么多了,如果想安装别的软件怎么办?
可以使用下面的参考方法。

很多时候,我们在windows下安装完cygwin后,使用时发现装少了软件。那么怎么办?

1)有的人说用setup.exe那个玩意再搞一遍。个人比较觉得那个方法麻烦。

2)也可以上网下载,然后安装,也麻烦

3)后来发现apt-cyg这个程序,真是强大啊。使用方法和ubuntu下的apt-get一样。爽死啦。


安装apt-cyg的方法如下(在cygwin中输入如下命令):

<span style="line-height: 21px;">  </span><span style="line-height: 21px; color: rgb(136, 0, 0);"># svn --force export http://apt-cyg.googlecode.com/svn/trunk/ /bin/</span>
如果连svn都没有安装怎么办,其实很容易,直接进入网站 http://apt-cyg.googlecode.com/svn/trunk/,然后把apt-cyg.txt下载回来,之后拷贝到bin目录。接着,增加可执行权限,去掉后缀,这样就可以了。

下面是apt-cyg操作的几个截图。
首先给更换软件源,用国内163源下载比较快。接着执行update,就可以了。
apt-cyg -m http://mirrors.163.com/cygwin/
apt-cyg update
Cygwin的安装以及部分使用 - yuanshuilee - 勇敢的劳尤条
 
然后安装编辑工具nano,用install命令,这样就完成了nano的安装。
apt-cyg install nano
Cygwin的安装以及部分使用 - yuanshuilee - 勇敢的劳尤条
 
************************************************************************************
个人对apt-cyg的理解(读了几遍这个脚本):
1)其实apt-cyg只是一个shell脚本,总共400多行,基本上我能看懂90%的代码。首先,You must install wget, tar, gawk, xz and bzip2 to use apt-cyg。也就是在setup.exe的时候,记得安装这些就好。
2)用wget命令,去网站上下载setup.bz2然后解压得到setup.ini。那setup.ini是什么呢?setup.ini里面包含了各种软件的安装信息以及所在网址等,但要install软件的时候,apt-cyg就cat setup.ini,然后再里面查找安装软件的说明以及网址,如果找到了,就用wget下载下来,然后校验,解压,安装,更新系统已安装软件信息等。
3)其他的功能,就没什么好说的了。

************************************************************************************
最后说明软件源的一些情况。
下面是网址http://mirrors.163.com/cygwin/的截图
Cygwin的安装以及部分使用 - yuanshuilee - 勇敢的劳尤条
 
进入x86_64
Cygwin的安装以及部分使用 - yuanshuilee - 勇敢的劳尤条
 
进入release,可以看到许多软件列表的文件夹
Cygwin的安装以及部分使用 - yuanshuilee - 勇敢的劳尤条
 
找到nano文件夹,点击进去可以看到下的东西。
Cygwin的安装以及部分使用 - yuanshuilee - 勇敢的劳尤条
 
也就是说,apt-cyg就是根据setup.ini提供的信息,找到http://mirrors.163.com/cygwin/x86_64/release/nano/ 这个网址,并进行下载,然后完成后面的安装。同时,在本地也会有下载下来的软件压缩包。 
C:\cygwin64\setup\http%3a%2f%2fmirrors.163.com%2fcygwin%2f\release\nano

而setup.ini的形式是:
@ nano
sdesc: "Enhanced clone of Pico editor"
ldesc: "GNU nano is a small and friendly console-mode text editor, based
on and mostly compatible with UW Pico. Besides basic text editing, nano offers
many extra features like an interactive search and replace, go to line and
column number, auto-indentation, feature toggles, internationalization support,
and filename tab completion."
category: Editors
requires: libncursesw10
version: 2.2.6-1
install: x86_64/release/nano/nano-2.2.6-1.tar.bz2 179468 e8be7ae12ce154ec6235bcb7ec4d3e05
source: x86_64/release/nano/nano-2.2.6-1-src.tar.bz2 1580485 c2dd830e9d21358f115ad7466fcfb961

【参考资料】
http://blog.csdn.net/forlong401/article/details/8517711

http://www.2cto.com/os/201212/176551.html


这篇关于Cygwin下面,apt-cyg的使用方法和基本原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/957820

相关文章

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

Ubuntu如何分配​​未使用的空间

《Ubuntu如何分配​​未使用的空间》Ubuntu磁盘空间不足,实际未分配空间8.2G因LVM卷组名称格式差异(双破折号误写)导致无法扩展,确认正确卷组名后,使用lvextend和resize2fs... 目录1:原因2:操作3:报错5:解决问题:确认卷组名称​6:再次操作7:验证扩展是否成功8:问题已解