8

学习高级批处理文件使用的最佳免费资源是什么?

4

6 回答 6

22

它不是免费的,但它可能是最好的。 Tim Hill 的“Windows NT Shell 脚本”

也就是说,每当我尝试在 cmd 批处理文件中做一些“高级”的事情时,我总是会后悔。

总是。

编辑:对批处理文件缺点的一些解释:

  • 数学能力很可怜
  • 引用支持是事后的想法 - 如果您需要将带引号的字符串作为参数传递给需要自己引用的命令,请在庇护处保留一个位置(实际上,我不确定这是否可能)
  • 字符串操作是半实现功能的拼凑

然后是看似永无止境的怪事、极端案例和不一致之处,您在每一个转折点都会遇到。

批处理文件唯一适用的是它们在每个 Windows 机器上都受支持。如果您只想作为一个组自动执行一些命令,那就太好了。也许添加一个简单的循环、几个子程序和一些环境变量来参数化。除此之外,我强烈建议您使用其他东西。

于 2008-10-07T22:59:43.017 回答
5

还可以考虑学习 Windows Scripting Host作为批处理脚本的替代方法。您可以使用您选择的语言来编写脚本(JScript、VBScript,甚至 Python)。每个现代版本的 Windows 都支持它,并提供功能丰富的函数库,相比之下,批处理文件看起来很原始。

我在说什么呢?Windows 批处理文件原始的。

您还可以创建可重用的 WSH 库、模块等。与批处理文件相比,有一点学习曲线,但非常值得。我的 Linux 朋友不再取笑我劣质的脚本环境。现在他们只是取笑我的劣质操作系统。

于 2008-10-07T23:32:35.057 回答
5

要获得命令帮助,这个 .bat 文件会将所有命令的帮助放入一个漂亮的 HTML 页面: http ://www.robvanderwoude.com/files/allhelp.zip

这家伙还有一些其他有趣的 .bat 东西。 http://www.robvanderwoude.com/batexamples_a.html

于 2008-10-08T07:17:28.147 回答
3

我发现这个很有用: http ://www.ss64.com/ntsyntax/

于 2008-10-07T22:58:00.087 回答
3

堆栈溢出可能吗?

https://stackoverflow.com/questions/tagged/batch-file

我发现真正有用的是将所有内置的 cmd.exe 帮助保存到文件中。在 cmd.exe 中键入“help”,这将显示您可以获得帮助的命令的大列表,对于每个类型“help <command>”,然后将结果保存到适当命名的文件中。就我个人而言,我发现以文件形式阅读帮助信息要方便得多。

另外,我非常同意 Mike B 反对过多使用批处理文件的禁令。对于任何不重要的任务,使用比批处理更健壮的语言几乎总是更好。如果您的批处理文件在打印时超过一页,您几乎肯定会后悔。

于 2008-10-07T23:04:23.383 回答
2

尝试过维基百科的批处理文件条目?...或者谷歌给出的关于高级批处理文件使用的众多答案中的任何一个?

于 2008-10-07T22:56:05.223 回答