您好,登录后才能下订单哦!
这篇文章主要介绍了PowerShell与Cmd命令行的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
PowerShell中的命令
Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework 的强大功能。它引入了许多非常有用的新概念,从而进一步扩展了您在 Windows 命令提示符和 Windows Script Host 环境中获得的知识和创建的脚本
启动PowerShell,在其中输入几个常用的Cmd命令
PS D:\Projects\Practise\PowerShell> dir Directory: D:\Projects\Practise\PowerShell Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 1/23/2013 12:35 PM d1 d---- 1/23/2013 12:35 PM d2 -a--- 1/21/2013 8:38 PM 36314 alias.txt -a--- 1/21/2013 8:32 PM 241530 cmdlets.txt
或者
PS D:\Projects\Practise\PowerShell> cd .. PS D:\Projects\Practise>
结果跟我们的预期是差不多。不过,我们是否就能据此说PowerShell就是PowerShell是命令行的加强版吗?再试试下面这个命令:
PS D:\Projects\Practise\PowerShell> dir /ad dir : Cannot find path 'D:\ad' because it does not exist.…
这个跟我们的期望相去甚远。在Cmd中,它应该输出当前位置的子文件夹的信息,但是这里,它似乎理解不了我们的参数。下面这个命令也是一样:
PS D:\Projects\Practise\PowerShell> fc .\alias.txt .\cmdlets.txt Format-Custom : A positional parameter cannot be found that accepts argument '.\cmdlets.txt'.…
我本来想要调用比较两个文件的fc命令,结果它却理解成了Format- Custom,牛头不对马嘴。这是怎么回事儿呢?到这里我们就可以回答前两个问题了:PowerShell不能执行Cmd命令行的所有命令,确切地说,PowerShell不能执行任何Cmd命令,至少不能直接执行。这是因为,PowerShell不是Cmd的新版本或者加强版什么的,只是它的有些命令从长相到功能都跟Cmd命令很相似而已。
PowerShell可以做为一个应用程序在Cmd中运行,其运行方式有点像在Cmd中运行SQLCmd或者Nslookup,在没有明确exit退出之前,一直是应用程序的运行环境,一切的输入,包括命令和数据,都由应用程序来接受和处理。
D:\Projects\Practise\PowerShell>powershell Windows PowerShell Copyright (C) 2012 Microsoft Corporation. All rights reserved.PS D:\Projects\Practise\PowerShell> get-helpTOPIC Windows PowerShell Help System…
Cmd也可以在PowerShell中作为应用程序运行,其运行方式与在Cmd中运行PowerShell相似:
PS D:\Projects\Practise\PowerShell> cmd Microsoft Windows [Version 6.2.9200] (c) 2012 Microsoft Corporation. All rights reserved.D:\Projects\Practise\PowerShell>dir /ad Volume in drive D is Doc Volume Serial Number is A6C5-E7CE
Directory of D:\Projects\Practise\PowerShell 01/30/2013 04:54 PM <DIR> . 01/30/2013 04:54 PM <DIR> .. 01/23/2013 12:35 PM <DIR> d1 01/23/2013 12:35 PM <DIR> d2
…
PowerShell通过Alias这个特性,可以让使用者以Cmd风格来使用PowerShell命令。这样做的好处是让用户在刚接触PowerShell的时候,就像在使用Cmd一样亲切、熟悉。坏处是,让人容易把 PowerShell和Cmd搞混了。不过当你了解了Alias的概念和Get-Alias命令以后,这个问题将迎刃而解:
PS D:\Projects\Practise\PowerShell> get-alias dir, echo, type
CommandType Name ModuleName ----------- ---- ---------- Alias dir -> Get-ChildItem Alias cd -> Set-Location Alias echo -> Write-Output
就是说dir实际上是PowerShell的Get-ChildItem命令的一个别名,cd是Set-Location的别名。。。到这里PowerShell和Cmd的关系问题算是解决了。
我其实一直以来都很讨厌类似“谁不如谁好”、“谁要代替谁”的问题,放到这里也一样,新的东西必然有它的优越性,旧的东西也有一票粉丝。从现在PowerShell被接受的程度来看,短时间内Cmd不会被PowerShell替代。长远来看呢,谁知道呢。我只知道,多一份选择就多一份自由,多一种可能性
感谢你能够认真阅读完这篇文章,希望小编分享的“PowerShell与Cmd命令行的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。