织梦号织梦号

何其有幸,我们相遇。

power shell和cmd的区别 cmd与shell的区别

power shell和cmd的区别?简单来说,powershell引入了很多新功能,能更好的通过powershell管理系统,是微软推出来想媲美linux shell功能,能在cmd里面执行的大多数命令都能在powershell执行,反之,则不行。Windows 10最新推出了Windows Terminal,可以集成powershell、cmd,ubuntu bash等。

第一、两种语言运行的平台不一样;

shell只能运行在Linux系统上;cmd只能运行在windows系统上面;如果两个语言进行串了,那么两个语言都是不可以运行。

第二、两种语言的语法不同;

shell语言有shell语言的语法;cmd有cmd的语言;他两相差很大,虽然都说语言是共性,但是不同的语言之间还是有差异的。

第三、两种语言写作的方式不同;

shell在linux系统下写作,可以更好的测试;而cmd在windows下写,测试方面。

power shell和cmd的区别 cmd与shell的区别

总之,两种语言是不同的,要想学习好,需要长期的操作,和积累经验,才可以更好的运用语言。

Linux和Windows的命令行,都是为了方便操作和维护系统的产物,但两者的地位和功能上有很大的区别。此处拿shell、cmd和powershell来说明。

先说说两者的领域和地位。

Linux的shell和Windows的命令行有什么区别?

Linux的shell,说白点就是它的命。所以Linux发展至今,依旧没有其他交互式程序或者命令行工具等能替代它,包括当前牛逼轰轰的python,也只能依赖于其上使用,而不能完全取而代之。没有了shell的Linux,就等于没有了手脚了,基本就废了,哪怕是其图形界面,本质上也是依赖于后台的shell交互。当前的Linux是没办法脱离shell使用的,这就是shell的地位,哪怕shell的功能相对于其他脚本语言或者其他系统的shell辣鸡很多,它也是不可动摇的。而且,Linux系统,除非经过特殊封装有特定的图形操作界面的商业产品(例如很多路由器、数字电视机顶盒等其实都是linux内核的),基本都存在于企业服务器上了,有几个普通用户会用上它去体验命令行呢。

而Windows,企业和家用都有普及。对于Windows 2008(对应桌面版Vista)之前的操作系统,其原生的命令行工具主要就是cmd了;对于Windows 20008R2(对应桌面版win7)及之后的操作系统,其原生的命令行工具主要就变成了powershell了。Windows强大之处在于其桌面,而非其命令行。很多电脑小白甚至是入门运维人员来说,命令都不会敲的,一样能通过鼠标点点点,然后流畅使用自家的windows系统。windows的命令行,说白点,对普通用户来说可有可无,即便把windows的cmd和powershell移除,一样可以好好的使用。但对于有追求的运维的人来说,这就是得力助手了。

由此可见,shell的地位之于Linux当前不可撼动,而cmd和powershell之于windows仅仅是附加产物。

再说一下功能。

shell虽然是Linux系统必不可少的,但并不能说明它的功能很强大。如果放在20年前,我说他不强大,肯定被人打死。放在现在,我相信除了死忠粉或者故步自封、不愿接受新鲜事物的人才会一如既往的认为它的功能很强大。shell说白点是真的老了,如果不是Linux原生,早就被埋汰了(如果没有windows,dos不死,cmd也会活得滋润)。至今shell仍然是面向字符的命令行工具,并没有因为时代而进化。shell“绑架”了Linux从而成为其手脚,不然redhat等Linux大厂也不会在后续发布的版本中支持添加Python、Powershell等其他面向对象的命令行和脚本工具了,毕竟redhat和微软可是竞争关系的啊,如果shell功能强大powershell弱,那redhat放敌人的武器进来干嘛呢。

而Windows,自从有了基于dotnet的powershell后,其命令行直接从之前的面向字符升级到面向对象了,拿powershell来编程开发软件等也不是问题,简直就成了C#的小弟了,其强大之处不言而喻。自windows2012后,微软开始向Linux学习,搞出core版的系统,虽然初期质量不敢恭维,但既然敢这么迈进,就说明其对powershell有一定的信心的,不然拿什么跟Linux杠呢,总不能是cmd嘛。

由此可见,shell功能机制老旧,很容易会沦为其他脚本工具的跳转窗口;cmd只能等着闭眼;而powershell朝气蓬勃,未来大有可为。

说白点,把Linux和Windows当成人来看,shell相当于Linux的手脚,图形界面也相当于windows的手脚,cmd可能最多算个快生锈废弃的子弹吧(可能都算不上),那么拿着武器(Python,Powershell等命令行shell)总比赤手空拳强大吧。



转载保留:织梦号 » power shell和cmd的区别 cmd与shell的区别

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏