Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 从cmd.exe迁移到PowerShell或使用PowerShell代替其他工具。什么时候使用PowerShell更好?_Windows_Powershell_Dos - Fatal编程技术网

Windows 从cmd.exe迁移到PowerShell或使用PowerShell代替其他工具。什么时候使用PowerShell更好?

Windows 从cmd.exe迁移到PowerShell或使用PowerShell代替其他工具。什么时候使用PowerShell更好?,windows,powershell,dos,Windows,Powershell,Dos,我一直在考虑使用cmd.exe命令行程序,该程序提供了一个命令行界面和一个扩展该界面的批处理编程环境 在旧的DOS操作系统上使用旧的command.com程序可用。cmd.exe 这个程序在Windows系统上已经有很长时间了。但是我觉得, 它在可用性和灵活性方面有其局限性 我听说PowerShell可以用来管理各种Microsoft产品,而且 支持第三方供应商的管理单元模块,支持几种非常有用的编程 管道等构造,最重要的是与.NET framework紧密集成, 这当然使PowerShell编程

我一直在考虑使用cmd.exe命令行程序,该程序提供了一个命令行界面和一个扩展该界面的批处理编程环境 在旧的DOS操作系统上使用旧的command.com程序可用。cmd.exe 这个程序在Windows系统上已经有很长时间了。但是我觉得, 它在可用性和灵活性方面有其局限性

我听说PowerShell可以用来管理各种Microsoft产品,而且 支持第三方供应商的管理单元模块,支持几种非常有用的编程 管道等构造,最重要的是与.NET framework紧密集成, 这当然使PowerShell编程语言非常强大

也许这个问题有点宽泛,但考虑到存在几个备选方案 用于系统管理的编程环境,如Python和Perl (这些脚本在许多方面慢慢取代了Unix系统上的shell脚本,以实现更复杂的功能 任务),我想知道PowerShell在生态系统中的位置, 最重要的是它是否值得学习,尤其是如果它值得学习的话 当有人已经知道Python或Perl之类的工具也用于 系统管理。PowerShell更像是一种系统管理工具,还是 它是一种更通用的编程工具,不需要编译, 不像,比如说,C#

我所看到的优点是它是预先安装的,并且您可以调用 .NET API函数中的函数

如果有人能整理出一些场景,要求学习,特别是在 如果已经知道其他编程工具,我将不胜感激。特别地 我想知道,除了快速的.NET脚本之外,一般来说,还有什么样的任务 更适合PowerShell编程


谢谢。

使用Powershell的首要原因是微软开始将其所有产品管理工具推送到Powershell。事实上,在使用Exchange之类的工具时,有些事情只能通过powershell来完成

第二个原因是powershell是一种完整的脚本语言,而dos批处理命令语言不是

第三个原因是,任何在.Net中可能实现的事情都可以在PowerShell中实现(有时需要更多的工作,有时需要更少的工作)

此外,有些公司(如VMware)为其产品发布的唯一基于命令行的界面是通过powershell管理单元或模块


而且,在我看来,这是一个非常有趣的工作环境。

是一个非常强大的功能。

从DOS到Powershell就像突然获得了相反的拇指。它更大、更复杂,而且对于一些非常简单的任务来说,它更麻烦,而且不需要很长时间就可以想象没有它您是如何做到的。

PowerShell有脚本,有更大、更灵活的命令集,并支持集成API等。它确实有一点学习曲线,尽管当你习惯了它时,它比普通的老DOS更有帮助。DOS命令提示符已经有十几年没有出现了。是的,现在可以通过cmd.exe命令调用的DOS提示符不是真正的DOS,而是DOS仿真程序。cmd.exe和DOS是两种不同的东西。DOS是一个实模式操作系统,它的命令解释器是command.com。Cmd.exe是提供CLI的Windows控制台模式应用程序。它有一个批处理(shell脚本)语言,它是旧command.com批处理语言的超集,但它不是DOS。我编辑了这个问题,使它更具体。如果还需要修理,请告诉我。谢谢,谢谢。我不知道.NET功能可从PowerShell获得..NET功能不是“可从PowerShell获得”-PowerShell是.NET。PowerShell存在于.NET“环境”中,而不是相反。但我总是有相反的拇指。突然,奥托-那太不可思议了。:)