从使用角度来看:Cygwin就是一个Windows软件,该软件就是在Windows上仿真Linux操作系统。简而言之,Cygwin是一个在Windows平台上运行的 Linux模拟环境,使用一个Dll(动态链接库)来实现,这样,我们可以开发出Cygwin下的UNIX工具,使用这个DLL运行在Windows下,可以想一下,在运行Windows的同时,也可以使用VI,BASH,TAR,SED等UNIX下的工具,这个VM虚拟机有很相同的原理,但是VM是虚拟多个,而Cygwin是同时使用Windows和UNIX,这样对于那些在Windows和Unix下移植的程序来说是比较简单的事情了。
使用
使用上的方便性很是不错,启动Cygwin以后,会在Windows下得到一个Bash Shell,由于Cygwin是以Windows下的服务运行的,所以很多情况下和在Linux下有很大的不同,这点上,我是通过直接使用Cygwin来体会。
1 比如PS,相当于Windows下的TM(任务管理器),直接Ps的话那么得到的会是Cygwin下的Shell的进程如下
2 如果这个时候你需要在Cygwin下显示Windows下的进程你可以在PS后面加上参数-aW
PS的相关用法:
Usage ps [-aefl] [-u uid]
-f = show process uids, ppids
-l = show process uids, ppids, pgids, winpids
-u uid = list processes owned by uid
-a, -e = show processes of all users
-s = show process summary
-W = show Windows as well as cygwin processes
3 有点不一样的地方,在Cygwin下怎么访问Windows下的内容呢?
首先使用DF命令直接查看下本地驱动器,很容易了吧,显示的内容如下:
以上是我硬盘的全部!
进D盘
4 help命令
比如我不知道md5sum做什么用的(这个命令是用于效验文件md5值的,主要是为了文件的完整性和安全性)
$ md5sum --help
Usage: md5sum [OPTION]... [FILE]...
Print or check MD5 (128-bit) checksums.
如果没有指定文件,或者文件为"-",则从标准输入读取。
-b, --binary read in binary mode (default unless reading tty stdin)
-c, --check 从文件中读取MD5 的校验值并予以检查
--tag create a BSD-style checksum
-t, --text 以纯文本模式读取(从tty 标准输入读取时为默认)
The following five options are useful only when verifying checksums:
--ignore-missing don't fail or report status for missing files
--quiet don't print OK for each successfully verified file
--status don't output anything, status code shows success
--strict exit non-zero for improperly formatted checksum lines
-w, --warn warn about improperly formatted checksum lines
--help 显示此帮助信息并退出
--version 显示版本信息并退出
----------------------------------------------------------------------
基本操作命令:
ls #以默认方式显示当前目录文件列表
ls –a #显示所有文件包括隐藏文件
ls –l #显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行
ls --color=never *.so > obj #不显示文字颜色,将所有so文件记录到obj文件中
----------------------------------------------------------------------
cd dir #切换到当前目录下的dir目录
cd / #切换到根目录
cd .. #切换到到上一级目录
cd ../.. #切换到上二级目录
cd ~ #切换到用户目录,比如是root用户,则切换到/root下
----------------------------------------------------------------------
rm file #删除某一个文件
rm -fr dir #删除当前目录下叫dir的整个目录
----------------------------------------------------------------------
cp source target #将文件source 复制为 target
cp /root/source . #将/root下的文件source复制到当前目录
cp –av soure_dir target_dir #将整个目录复制,两目录完全一样
cp –fr source_dir target_dir #将整个目录复制,并且是以非链接方式复制,当source目录带有符号链接时,两个目录不相同
----------------------------------------------------------------------
mv source target #将文件source更名为target