我使用批处理文件(Windows)将我们的服务器版本打包成zip文件,运行命令行版本的WinZip.以前我们"手工"做过这种事情,但我开发了使用批处理文件自动化它的过程.
批处理文件变得非常复杂,因为我们的产品很复杂(即,我们这次发布了哪些部分?我们是否也发布了配置文件?)并且我开始遇到批处理文件的一些令人沮丧的限制.
PowerShell作为批处理文件的"升级"进行调查会是一件好事吗?或者是完全过度杀戮,因为它将要做的大部分工作是解雇DOS命令?
好处:PowerShell可以使用.NET程序集吗?在,我可以开始使用SharpZip进行压缩吗?
如果您有一个可行的解决方案,那么您不需要去PowerShell.话虽如此,如果您计划进行更改或改进流程,那么我强烈建议您使用PowerShell.Powershell可以访问.Net程序集......主要是.有些组件的结构使其比其他组件更难.
如果您决定查看powershell,可以在此处查看一些资源.
最初我对PowerShell感到非常兴奋.最后是Windows上强大的本机shell.但是,我很快意识到,与你最喜欢的unix shell相比,PowerShell只是太冗长了.与使用bash和Win32的GNU工具所做的相比,即使做简单的事情也会占用太多的内容.
我喜欢这个想法,shell知道不同的类型,但如果我需要做更多的工作,我更喜欢用各种unix流编辑器获取必要的数据.
编辑:我刚看了PowerShell,我不得不承认,它确实有一些非常有用的功能,这些功能不适用于传统的unix样式工具.
例如,PowerShell拥有所有命令,这意味着它可以提供更加连贯的功能集.参数统一处理,您可以使用真正有用的通配符搜索命令,参数等.
第二个很棒的功能是,PowerShell允许您枚举通常不可用于流编辑器的源,例如Windows注册表,证书存储库等.当然,您可以使用工具为您执行此操作并将其作为文本呈现,但PowerShell方法只是非常优雅的IMO.