写给在Linux/Ubuntu门外徘徊的少年们

    先放张截图勾引一下吧,左边是docky,用wine模拟器跑QQ,ubuntu10.04 64bit(因为编译chromium的源码需要4G+虚拟内存。。晕),emerald标题栏透明,精简版界面的nautilus文件管理器,下方的程序栏自动隐藏了。
写给在Linux/Ubuntu门外徘徊的少年们_第1张图片

   

    哥用Ubuntu已经快2年了吧。感觉良好。


    刚开始用的时候,很不习惯。但我很清楚一点,不习惯可能只是你自己的原因,出了问题把责任推给外物不是哥的风格。所以,我想说的第一点,就是惯性问题,从win转过来的童鞋, 肯定都有很深的win使用习惯,刚开始肯定会不习惯的,迈过这道坎就好过了。ps: 对于最新的ubuntu11.10 unity 界面什么的,表示无法接受。

Why Linux/Ubuntu?

    Linux商用比较多,大部分服务器都是跑Linux的。学Linux有钱途。好吧,当初我就是因为这个猥琐的原因开始接触Linux,虽然动机不纯,但好歹也是个靠谱的理由。为什么选择Ubuntu?因为用的人多,遇到问题什么的上网搜比较容易搜到,当然,其他发行版的Linux大部分内容还是相通的,所以,选择Ubuntu只是为了起步比较方便。

Linux = 命令行?

    学Linux就是学命令行?有一定的道理,但不完全对。刚开始的时候,我一直有这样的困惑,linux都有图形界面啦,为什么还用命令行?用命令行复制目录下的某几个文件显然没有用图形界面鼠标点选来得直观方便啊。现在看来,有以下几个原因:
  1. ssh登录是没有图形界面的。暑假在腾讯实习,知道是在Linux下开发,但刚开始一直纳闷?公司电脑装win7,不能乱装系统,那Linux机器在哪?后来导师给了个putty程序,好了,机器就是一个黑窗口,生平都不知有没机会去机房看看物理机长什么样。图形界面?有这东西么。
  2. 批处理。好了,比如现在有一些很繁琐,很机械的操作需要你去完成,我想你动手做两遍就会开始觉得烦了。何以解忧?批处理!想一下如果程序是图形界面的,你怎么整?肯定就麻烦多了。
  3. 所谓的Linux哲学。我之前自己开发了个Andorid下的剪刀石头布的小游戏,这玩意,用命令行几分钟就能搞定,用图形界面的话,加上美工什么的,做了1个星期。我承认,某些程序,用GUI确实方便很多,不过我很懒,我想你也一样,做完程序再去整个GUI?我想你会选择去玩局游戏什么的吧。命令行的话,比较底层,对系统friendly,而图形界面对用户friendly。总之,你如果被Linux洗脑了,就会觉得这样做很正常。

Linux学什么?

    我觉得有以下几点吧:
  1. Linux常识。tmp目录在哪,~代表啥,目录用"/"还是“\“分隔,命令执行到一半想退出,权限不足,没执行权限......
  2. 目录结构。这点跟windows的分区很不一样,分区都是挂载到目录树,这样整个结构就统一了。Linux有句很有名的话,Everything is a file。自己以后慢慢体会。还有一个比较特殊的,就是软连接了,用过就知道好用啦。
  3. 用户权限。经常要sudo什么的,有点烦,不过你要明白这东西还是有用的。实习的时候用root登录,不小心就把整个根目录删了,唉,虽然及时按了ctrl+c。用自己的普通用户登录就可以避免这种问题。windows的ntfs用户权限就比较恶心啦。
  4. Shell命令,脚本。系统常用的命令要会用,还有高级一点的就是写脚本啦。
  5. Linux下编程。Linux下编程跟windows编程有什么区别?调用的API不同吧,还有一些是跟系统相关的。

Linux怎么学?

  1. Linux基础。我推荐鸟哥的教程吧,似乎不错。我都忘了当初是怎么学会的,总之反正就会了。
  2. Linux下编程。我推荐APUE,不过这本书不适合入门,初学者还是不要挣扎了,确实不适合,看Unix实践编程这本吧,或者有其他好的书。
推荐一篇好文章:

《其实Unix很简单》 http://note.sdo.com/u/1521938068/n/qJKWk~jEc7u9nM0w4000vA



你可能感兴趣的:(编程,linux,windows,ubuntu,图形,文件管理器)