Windows Shell脚本可使用哪些工具和语言?

Windows Shell脚本可使用哪些工具和语言?

What tools and languages are available for windows shell scripting?

我想知道在Windows平台上执行一些脚本工作的选项。
我需要文件操纵,注册表编辑等功能。可以使用脚本工具编辑文件吗?
Windows脚本工具还提供哪些其他功能?
使用Windows GUI可以完成的所有操作都可以使用脚本语言完成吗?


我认为来自Microsoft的Windows PowerShell是目前这类产品的最爱。


我建议使用" Take Command"(JPSoft),它比PowerShell更像" cmd.exe"。我们在ESSS上使用了多年。


批处理文件是最可移植的,但是做复杂的事情会很困难(非常难)。

Powershell非常强大-嗯-但目前安装的域仅比那些喜欢使用Powershell和他们管理的服务器的人多。如果您控制要编写脚本的计算机,并且可以要求安装Powershell,那么Powershell是可行的方法。否则,批处理文件是最好的方法。

Powershell让您可以做任何事情,但是有些事情会比其他事情困难:)

(严重的是,如果您想通过脚本控制Windows GUI应用程序,除非该应用程序本身支持脚本编写,否则您将痛苦不堪,或者您希望开始将消息发布到对话框控件并通过屏幕抓取对话框进行检查成功)。


如何安装Windows版本的Python,Perl或您喜欢的语言?这些应该提供您需要的所有功能。


可能值得看一下2.0版的预发行版。很多东西已经改变:

http://blogs.msdn.com/powershell/archive/2007/11/06/what-s-new-in-ctp-of-powershell-2-0.aspx


Powershell可以满足您的需求。

file manipulations

该SO帖子回答了如何替换文本文件中的字符串。 将其粘贴到此处以方便参考:

(Get-Content c:\temp\test.txt).replace('[MYID]', 'MyValue') | Set-Content c:\temp\test.txt

您还可以执行其他操作,例如复制文件和文件夹。 您可以在Windows Powershell文档中找到更多信息。

registry editing

使用Powershell可以轻松完成此操作。 这是Microsoft Dev Blogs中的示例代码:

Set-ItemProperty -Path HKCU:\Software\hsg -Name newproperty -Value anewvalue


脚本编写是爆炸式的。

我个人喜欢编写一些邪恶的小批处理文件。您可以找到执行几乎所有操作的命令行程序。我更喜欢批处理文件,主要是因为它们可以从一台计算机移植到另一台计算机,并且最多带有几个Unix工具(SSED,GREP和GAWK)的zip。有一个命令行REG.Exe甚至可以进行注册表更改和读取。您可以使用" FOR / f"循环来解析命令的输出。

PowerShell确实有更多...错误..电源(我在其中写了第二篇文章,但我对此无能为力。)

如果要查看Windows自动化,请查看AutoHotKey。

您正在尝试实现什么自动化?这可以帮助我们缩小将有用的范围。

  • 乔希

编辑:为了记录,我在@jameso的同时输入了该信息。如果工作中的某人没有问我一个问题,我可能已经在他之前发布了。我确实对帖子的相似性感到有些颤抖。


我安装了cygwin,因此我可以运行bash shell脚本来满足自动化需求。此外,当我需要在Windows上本机运行的东西时,可以使用批处理+ jscript的组合(如果安装了Visual Studio.Net,则可以在cmdline上运行,只需调用" cscript XXX.js"即可)。


Powershell很不错,但是您必须额外安装。在几乎所有Windows安装中都不是标准的。因此,如果仅供您自己使用,那么powershell应该很好。例如,如果您需要脚本在一般人群的计算机上运行,??例如,作为要生产的软件的一部分,它可能不是最佳选择。

如果还可以安装其他东西,可以尝试cygwin。这使您可以使用完整的Linux bash命令行以及所有相关工具。

如果您需要默认Windows安装中包含的内容。有Windows命令行(cmd.exe)。它具有一些功能,但是与Linux中可用的功能相比却非常不足。另一个可能更糟的问题是,文档编制方式没有太多。

您可能也对VB脚本(消失了)感兴趣。 VB Script几乎可以在所有最近的标准Windows安装中运行,并且比命令行功能要强大得多。


CScript?我记得看到类似的东西。


Windows脚本语言

还看看PowerShell


昨天我本可以为您修理的;)

What all are the tools/languages for
windows shell scripting?

会读得更好

What tools and languages are available
for windows shell scripting?


推荐阅读