前言
要说接触Linux
还是在15年刚刚步入开发工作没多久以后才开始接触的,之前在学开发的时候都是用的windows,不管是学习前端,还是学习PHP
和Python
。当时觉得在Windows下搞这些开发语言好像理所当然就是这样的。下一个WAMP
、XAMPP
、Python
环境、配置各种环境变量等,还好前端那时候没有NodeJS,或者说NodeJS在国内还没普及起来,那时候的HTML、CSS、JavaScript是不需要配置什么开发环境的,一个编辑器,把文件后缀一改即可开发。(那时候学了一些 centos相关的操作,但是完全没把它当回事)
直到后来,真正步入公司以后,公司的系统是在云服务器之上的,而云上的服务器又是linux
的不是centos
就是ubuntu
,让我着实很不习惯,可视界面也没有,全是命令进行操作;但是后面用顺了之后却又觉得还好,每个软件的的相关操作基本上是固定的,除非用什么特殊情况,才会出现一些让人意外的bug。
谈谈两个系统让我感觉差异最大的地方
1、首先是目录结构
Linux
上的/目录下有很多子目录,像/bin、/sbin、/etc、/usr
等等。文件都按功能整齐划一地存储。(随着后面我慢慢接触,我也接触到了有界面的Linux系统,比如Ubuntu的麒麟版)
Windows
的目录结构相比较简单,许多文件都直接放在C盘根目录下,每个程序自行决定文件存放位置。
2、再者是软件安装及卸载
Linux
上软件基本上通过软件包管理器来进行安装和卸载,非常方便。如apt或yum就可以方便地安装和卸载软件。
Windows
下需要手动下载安装程序,运行安装向向,而且通常会留下大量残留文件。一些你看不到的注册表什么的,里面会有大量你不想要的东西,这也是为什么windows下,360等等杀毒软件、电脑管家软件安装量普及的一大原因。
3、然后是命令管理
Linux拥有一个强大的命令行界面用于执行大部分任务。(不管是有界面的系统、还是无界面的系统)
而Windows下命令行远远不如Linux强大,用于执行简单的任务。(特别是Win10之前的一些系统,cmd的软件让我在接触linux后,大大的觉得low)
4、再就是权限相关
Linux下的文件与目录都有严格的权限控制,只有具有适当权限的用户和组才能访问。
Windows下没有类似于Linux严格的权限系统,主要依赖NTFS。(也同样,在Win10之前尤为突出)
5、最后我感觉是开源相关
LinuxKernel是开源的,用户可以自由修改增删相关代码。并且里面大量的第三方软件也是开源的,在后面的工作中,我也发现国内有也有很多开源的Linux操作系统。
Windows是封闭源代码的,用户无法修改内部代码。
题外话一: 其实没有用windows,除了因为开发的因素,其实还有一个因素就是,windows广告实在太多了(比如我旁边的妹子,电脑只要待机,就是传奇SF一刀999的全屏广告,我们偶尔调侃她,看不出来还玩传奇SF一刀999啊)
题外话二: 其实我现在并不是用Linux最多。而是基本上在用Unix
,也就是MacOS系统,从2016年起我有了自己的第一台MacBook后,基本上到现在一直是在用MacOS,原因呢,比如Linux在开发方面确实要胜过Windows,但是国内的很多软件支持却很差,就打最普通的QQ 和微信来说吧。QQ只有当时的一个贼老的版本(什么什么国际版)、微信呢只能用网页版。。然后什么微信开发工具什么的也都不支持Linux(现在只不支持不知道,反正当时我们18.19年的时候还是不支持的)但是MacOS既保留了Linux系统的优势,也弥补了Linux系统上软件渣渣的劣势。
所以,希望官方下次出个 MacOS系统的类似话题哈,因为我感觉虽然开发者接触过linux的肯定多,但是实际在开发者领域中,如果非Winodws那就大部分肯定在用MacOS了。。。