几点学习Linux编程的建议
我个人用了3、4年Linux,从当初的小菜鸟到现在的大菜鸟,积累了一些经验,现在分享给大家,尤其是初学者。
弄Linux的环境大体有3种办法:
- 在Windows上安装cygwin
- 在Windows上安装虚拟机,再安装Linux
- 直接装Linux,弄个双系统
3种办法我都用过,目前我个人是双系统,但是对于初学者,我强烈推荐使用第一种方法,是的,极其强烈。原因很简单,就是cygwin安装简单,不用分散精力。
安双系统可能分区啊什么的有些顾忌(其实也没那么复杂),安虚拟机更麻烦,我初学时买了本《鸟哥的Linux私房菜——菜鸟篇》,书挺好,不过说实话不太适合初学者。书里面教安装虚拟机,安了虚拟机再安Linux,安装完要主机和虚拟机通信,网啊,共享文件夹,鼠标切换什么的,很烦,搞到最后不是学Linux,而是学习虚拟机了。而且安了虚拟机每次启动时间很长,也就懒得用了,不开虚拟机当然就玩不了Linux,所以强烈不推荐使用虚拟机。
下面就重点说下cygwin了。cygwin官网(www.cygwin.com)对它的一句话介绍是: Get that Linux feeling - on Windows(在Windows上找到Linux的感觉),确实特别棒。
去官网下载安装文件 setup.exe 后,就可以安装了。值得一提的是这个安装包不光是用来安装Linux的,而且还是用来更新Linux,安装新的软件包的,比如你想在这个Linux环境里面使用编辑器emacs,编译器gcc,调试器gdb,自动编译工具make,等等,都是通过运行那个安装文件来安装的。这些工具不熟悉没关系,我以后再介绍,这篇博客主要目的是弄个环境,熟悉一些基本的bash命令。
安装过程我就不赘述了,直接默认下一步就ok,期间会让你选择下载源,下载后文件的目录等等,都无关紧要,但是选择软件包这一步比较重要,每次更新就是在这里添加或者删除软件包,截图如下:
想安装什么在search那个框里面搜索,然后在下面选中就可以了。
安装完成后就是见证奇迹的时刻了,如果你是默认安装,你会在桌面上看到cygwin的图标,在Windows的C盘下发现cygwin的目录,目录结构如下:
cygwin相当于Linux的根目录 "\",里面的目录是Linux系统最基本的目录,不管你怎么装的Linux,不管你装的Linux什么版本,这几个目录在根目录下都有。其中bin里面是常用的命令,etc里面是配置文件,lib里面是库文件,usr里面是头文件。但是,最重要的目录是home,从此以后这个home就是你的家了,家里面有你自己的房间,房间名就是你的用户名。从此以后不管你在Windows的世界里面怎么浪,记得常常回到自己的家里看看。因为我们安装的是简版,所以只有你一个目录,如果还有其他用户,那么home里面还回有其他目录。
怎么回到自己房间里面呢?直接点击桌面上那个cygwin的图标就可以了:
打开之后是一个黑洞洞的窗口,如图所示:
或许和你想象中的一样,或许比你想象中的还要黑一点,但是没有错,无数大牛就是面对着这样一个黑洞洞的窗口,写出了无数优秀的软件。而从此以后,你也将是这个黑洞洞的窗口前的一员,不过不要紧张,不要害怕,我会带你走过这个黑洞洞的窗口前最黑暗的一段路。
先介绍几个最简单的命令吧:
- ls:列出一个目录中的内容,缺省是当前目录
- cd:跳转至一个目录
- mkdir:创建一个目录
- echo:显示文本
- rm:删除目录或者文件
刚打开这个窗口,我们的位置就是在自己的房间里面。 接下来,我要使用刚才那些命令做一些事情,我用文本的方式贴在下面,具体做了什么,我用双斜杠(//)注视在后面。
Eric@Eric-PC ~
$ ls //缺省参数,显示当前目录内容
//当前目录什么都没有
Eric@Eric-PC ~
$ mkdir "hello world" //在当前目录新建目录,名为hello world
Eric@Eric-PC ~
$ ls //显示当前目录内容
hello world //刚刚新建的目录
Eric@Eric-PC ~
$ cd hello\ world/ //进入hello world目录
Eric@Eric-PC ~/hello world //这里显示了当前所在目录
$ ls //显示当前目录内容,当前目录是hello world,里面什么都没有
Eric@Eric-PC ~/hello world
$ cd .. //进入父目录,两个点..就表示父目录,一个点.表示当前目录
Eric@Eric-PC ~
$ echo "hello world" //显示文本:hello world
hello world
Eric@Eric-PC ~
$ echo "hello world" > text //显示文本hello world并保存在文件text里面
Eric@Eric-PC ~
$ ls //显示当前目录内容,里面有一个目录,和一个文件
hello world text
Eric@Eric-PC ~
$ ls -l //带参数的ls命令,使用长列表模式,可以看到更多信息
total 1
drwxr-xr-x+ 1 Eric None 0 Feb 17 19:21 hello world //
-rw-r--r-- 1 Eric None 12 Feb 17 19:22 text //
Eric@Eric-PC ~
$ rm text //删除文件text
Eric@Eric-PC ~ //显示目录内容
$ ls
hello world //只剩下一个目录了
Eric@Eric-PC ~
$ rm -r hello\ world/ //删除目录需要使用带参数的rm命令,参数-r表示删除目录
Eric@Eric-PC ~
$ ls //显示目录内容,什么都没有,都删完了
Eric@Eric-PC ~
$ //现在该你用用这些命令了。。。
这些命令使用起来很简单,但也可以用的很复杂,因为有很多参数我都没说,自己搜一下吧。
好了,这篇博客就要结束了,更多的内容我以后再写。
最后要记住,现在你在Windows的世界里面有了一个Linux的家,以后不管你在Windows的世界里面怎么浪都好,记得常常回到你Linux的家里面看看,cd一下,ls一下。