`
garydo
  • 浏览: 158871 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

cygwin使用心得

阅读更多
1.在cygwin里访问Windows盘
cd /cygdrive/c
cd c:
2.整合cygwin命令到Windows中
假设cygwin安装在d:/develop/cygwin,则将d:/develop/cygwin/bin添加到系统变量PATH中(最好加在 windows前面,这样的话,有些相同的命令的话,是先执行cygwin的命令,而不是windows命令,比如find)
就可以直接在cmd.exe下面执行tar czvf xxx.tgz ./
基本上所有的命令都可以用了,包括ls,more,less,find,grep等。
3.使用TGZ备份
将cygwin的BIN加入到PATH
建一个BAT文件:
@echo off
d:
cd d:\website\8thmanage
tar czvf 8thmanage.tgz 8thmanage
4.Windows使用SHELL脚本
将cygwin的BIN加入到PATH
在$CYGWIN的目录/var/下面建一脚本t.sh,注意,t.sh里面的路径,都是相对于$CYGWIN的,里面需要访问C盘的,请用/cygdrive/c/
在Windows下执行:
d:\cygwin\bin\bash d:\cygwin\var\t.sh
(可以定期执行)
5.同步Windows系统用户
mkpasswd -l > /etc/passwd
mkgroup -l > /etc/group
如果有Domain的话,需要加上-d domainname
6.安装系统服务
cygrunsrv
7.cygwing下使用rsync
a.安装rsync组件
b.进入cygwin,配置服务器
vi /etc/rsyncd.conf
...screts file=/etc/tom.ipaddr.pas
配置文件,参考我写的另外一篇rsync的文章,注意:密码文件权限必须是0400
chmod 0400 /etc/tom.ipaddr.pas
c.启动服务端
rsync --daemon
d.客户端同步
在客户端的cygwin下面,运行rsync同步,具体命令,请参考另外一篇rsync的文章。
8.cygwin下使用SSHD
a.需要安装了cygrunsrc,openssh
b.运行ssh-host-config -y
一路回车,直到出现CYGWIN=时,输入tty ntsec,再回车,
(或者,增加一系统环境变量CUGWIN=nesec tty)
c.已经安装好SSHD服务到你的Windows服务中,可以直接在服务中启动,关闭。
(cygrunsrc -S sshd或者net start sshd)
9.中文显示
vi ~/.bashrc
# 让ls和dir命令显示中文和颜色
alias ls='ls --show-control-chars --color' 
alias dir='dir -N --color'
# 设置为中文环境,使提示成为中文
export LANG="zh_CN.GBK"
# 输出为中文编码
export OUTPUT_CHARSET="GBK"
~/.inputrc为 
set completion-ignore-case on 
set meta-flag on 
set output-meta on 
set convert-meta off 
cygwin.bat脚本为: 
@echo off 
set MAKE_MODE=UNIX 

--------------------------------
安装
可以直接到http://www.cygwin.com下载一个安装程序,setup.exe,这个程序只是一个安装程序,所有的模块将从网络下载安装。或者,你可以下载一个cygwin.iso的镜像,直接映象成光盘,再从光盘本地安装,这样会快很多,而且不用考虑断线的问题。

X下的中文支持
locale支持
Cygwin的locale支持一直都有问题,好在X程序还可以使用XLOCALE。
建议还是使用zh_CN.gbk, 不要使用zh_CN.GB2312
在移植程序时需要注意不要让程序连接libcygwin.a里面的setlocale,而是采用libX11.a里面的_Xsetlocale。方法是:检查被移植程序的全部源代码,发现 
#include 
就修改为 
#define X_LOCALE
#include 
同时注意程序的连接库要添加-lX11.
如果对于结果没有把握,可以找个Dependency Walker查看程序是否连接到了cygwin1.dll里面的setlocale,如果是,就说明有遗漏。
中文字体
PCF点阵字体
GTK1.x 和其他一些老的X程序都是用X字体,
注意必须要有编码与locale一致的字体,比如用zh_CN.gbk就必须要由GBK编码的字体,用zh_CN.GB2312就必须要有GB2312编码的字体
如果使用zh_CN.GB2312,这里有一个RedOffice面带的点阵字体包
可以采用ttf2bdf从TTF抽取得到bdf格式,然后再用bdf2pcf得到pcf格式的字体文件。
(这里有一个Windows版本的TTF2BDF,可以将Windows TTF字体转换出BDF字体, 注意得到bdf后要手工编辑一下文件头,将编码声明修改正确)

到字体之后,放到某个目录下,执行mkfontdir生成fonts.dir,然后用xset +fp
/path/to/your/fonts将字体路径加入即可(注意与fontconfig的配置不同,这里路径是不递归的,如果有的字体放在子目录里面,
子目录也需要添加进去才行)。

TTF字体
很多新的应用程序(比如GTK2)都使用fontconfig/libxft2来显示字体,它对TTF字体的支持比较好(X以前通过freetype, xft模块也支持TTF字体,但对中日韩字体的支持不是太好,而且也在Cygwin下似乎也没有这些模块)
完全可以使用Linux下的arphic字体包. 如果没有安装Linux,可以到http://packages.debian.org下载相应的包,然后用7zip解压提取出ttf文件。
得到字体文件之后,放到某个目录之下,编辑/etc/fonts/local.conf,将字体路径加入:
/path/to/my/ttf/fonts如果只是自己使用,可以将字体文件放到~/.fonts下,不需要修改任何配置,最多三十秒fontconfig就能够发现这些字体了。

中文输入法
老黄(hzhr)移植了miniChinput到Cygwin,我也移植了fcitx-1.8.5和3.0,均可以从我的网站上找到 http://www.oliwen.com/bama...
一般设置了LC_CTYPE和XMODIFIERS就可以在程序中激活输入输入法了(除非这个程序没有XIM支持):
LC_CTYPE=zh_CN.gbk
XMODIFIERS="@im=Chinput"
export LC_CTYPE XMODIFIERS
对于fcitx而言,XMODIFIERS设置为什么都可以(但必须要设置),所以设置为"@im=Chinput"的话chinput和fcitx都可以正常使用
VI中的 Backspace 與 Delete 按鍵異常
首先確定 $TERM的設定為cygwin

echo $TERM

若不是,請設定為

TERM = cygwin 
export TERM

Backspace 與 Delete這兩個鍵正常狀況下只有一個有用。可在 $HOME/.bash_profile 任選一個來使用

stty erase '^H' //ctrl+v, ctrl+h 

stty erase '^?' 
分享到:
评论
1 楼 snow8261 2008-11-15  
不错,学习了

相关推荐

    Cygwin 下的NS3安装心得

    - 如果错误涉及到特定的Python模块,尝试单独安装这个模块,例如使用`pip install <module_name>`。 - 检查`waf`脚本和相关的配置文件,看看是否有任何与RFID模块相关的配置项被遗漏或错误设置。 - 如果RFID模块是第...

    Cygwin 虚拟机

    本人为了学习标准C++,偶选择了眼下如日中天的Eclipse做为IDE,为了让...为了能让大家也能分享我的经验,避免走类似的弯路,现在我将自己总结出的Cygwin下载安装心得写出来,供感兴趣的人士参考,也是 给自己做个纪念。

    Windows XP 下编译 WireShark 步骤及心得.doc

    官方推荐的是Microsoft Visual C++ 2008 Express Edition,但也可以使用其他版本,如作者使用的VS2003专业版。确保安装时配置好`vcvars32.bat`环境变量,或者在编译前手动调用该脚本来设置编译环境。 2. **安装...

    SFTP学习心得

    在本文中,我们将深入探讨SFTP(Secure File Transfer Protocol)的学习心得,特别是在Windows环境下通过Java进行实现的方法。SFTP是一种安全的文件传输协议,它基于SSH(Secure Shell)协议,确保数据传输的安全性...

    LINUX系统实践报告-常用 shell 命令及实用工具的使用

    #### 四、实验心得与体会 通过本次实验,不仅增强了我对Linux基本命令的理解和运用能力,还让我掌握了如何利用这些命令解决实际问题。例如,通过`man`命令获取帮助文档,利用`grep`和`awk`等文本处理工具进行数据...

    nuttx-README.pdf

    文档中提到了在使用Cygwin构建NuttX时可能会遇到的问题,如路径问题(Strange Path Problems)以及Windows本地工具链的问题(Window Native Toolchain Issues)。 8. 文档和环境: 最后,文档自身强调了它是一个...

    ZendDebugge最新版以及旧版本

    描述中的链接"http://hi.baidu.com/amenmen/blog/item/2097259071a2f396a877a430.html"是一个已废弃的百度空间文章,原本可能包含了关于 ZendDebugge 的详细教程或使用心得,但由于网址已经失效,我们无法直接获取该...

    初识NS2_给NS2的初学者

    初学者可以从阅读官方文档开始,然后逐步尝试编写简单的仿真脚本,最后参与到NS2社区中与其他用户交流心得,共同进步。 #### NS2仿真基础 **NS2仿真的基本流程** 1. **定义仿真场景**:确定要仿真的网络类型和...

    实验三LINUXSHELL脚本程序设计.pdf

    实验环境为 Linux 操作系统,使用 Shell 或 Cygwin 模拟系统。 三、预备知识 1. Shell 程序的主要用途 Shell 程序可以完成系统管理任务,尤其适合完成那些易用性、可维护性和便携性比执行效率更优先的任务。我们...

    实验三LINUXSHELL脚本程序设计.docx

    实验环境采用 Uni 某/Linu 某及 SunSolari 或 window 系列应用系统,使用 SHELL 或 window 环境下的 cygwin 模拟系统。 三、预备知识 1. SHELL 程序的主要用途 SHELL 程序可以使用命令的集合,安排自动化处理过程...

    光敏传感器实验.docx

    2. 在 Cygwin 开发环境中执行烧录操作,把程序烧录进基站的 rom,让传感器进行实验所需的操作 实验结果: 串口助手显示光敏传感器接收到的光照变化 七、实验分析: 当光照强度发生变化,A\D 转换器就把光强转换...

    c4.5.rar_C++决策树C4.5_C4.5决策树_c4.5算法_决策树c4.5_决策树算法

    压缩包中的"cygwin下编译c4.5心得.txt"可能是作者在使用Cygwin环境编译C4.5程序时的经验分享,可能包含了关于依赖库、编译选项和解决编译问题的技巧。"www.pudn.com.txt"可能是一个链接或资料来源,可能提供了更多的...

    ffmpeg编译脚本

    - 使用`cygwin`编译,如果是在Windows平台上进行操作。 - 配置Android Studio环境,建议使用版本V2.2.2。 - 将编译好的`.so`动态库文件拷贝到项目的`include`和`libs`文件夹中,注意文件夹命名应符合Android平台...

    ASP源码—传奇类游戏公司网站源码 v1.0.zip

    6. **跨平台**:虽然ASP最初是为Windows环境设计的,但通过IIS(Internet Information Services)服务器,ASP也可在非Windows操作系统上运行,如通过Cygwin或XAMPP等工具在Linux或Mac OS上运行。 【传奇类游戏公司...

    openssl中文版分析

    - **Windows编译与安装**: 在Windows环境下,可以通过Cygwin或者MinGW编译安装OpenSSL,也可以直接下载预编译好的二进制文件进行安装。 **2.3 OpenSSL源代码** OpenSSL的源代码组织清晰,易于扩展和维护。其核心...

    C++学习网站列表.txt

    阿海的个人主页包含了他的C++编程经验和心得,对于想要深入了解C++的开发者而言是个不错的选择。 综上所述,以上列出的C++学习网站涵盖了从理论知识到实际操作、从基础概念到高级技术的各个方面,无论是初学者还是...

    物联网实验报告.docx

    实验步骤包括了连接基站、配置串口助手、打开Cygwin开发环境,并在特定目录下编译和烧录代码,通过级别控制可以实现调试信息的筛选输出。 其次,实验1.2探讨了串口组件通信。实验目标是熟悉CC2530芯片上的串口通信...

Global site tag (gtag.js) - Google Analytics