学习高级批处理文件使用的最佳免费资源是什么?
6 回答
它不是免费的,但它可能是最好的。 Tim Hill 的“Windows NT Shell 脚本”。
也就是说,每当我尝试在 cmd 批处理文件中做一些“高级”的事情时,我总是会后悔。
总是。
编辑:对批处理文件缺点的一些解释:
- 数学能力很可怜
- 引用支持是事后的想法 - 如果您需要将带引号的字符串作为参数传递给需要自己引用的命令,请在庇护处保留一个位置(实际上,我不确定这是否可能)
- 字符串操作是半实现功能的拼凑
然后是看似永无止境的怪事、极端案例和不一致之处,您在每一个转折点都会遇到。
批处理文件唯一适用的是它们在每个 Windows 机器上都受支持。如果您只想作为一个组自动执行一些命令,那就太好了。也许添加一个简单的循环、几个子程序和一些环境变量来参数化。除此之外,我强烈建议您使用其他东西。
还可以考虑学习 Windows Scripting Host作为批处理脚本的替代方法。您可以使用您选择的语言来编写脚本(JScript、VBScript,甚至 Python)。每个现代版本的 Windows 都支持它,并提供功能丰富的函数库,相比之下,批处理文件看起来很原始。
我在说什么呢?Windows 批处理文件是原始的。
您还可以创建可重用的 WSH 库、模块等。与批处理文件相比,有一点学习曲线,但非常值得。我的 Linux 朋友不再取笑我劣质的脚本环境。现在他们只是取笑我的劣质操作系统。
要获得命令帮助,这个 .bat 文件会将所有命令的帮助放入一个漂亮的 HTML 页面: http ://www.robvanderwoude.com/files/allhelp.zip
这家伙还有一些其他有趣的 .bat 东西。 http://www.robvanderwoude.com/batexamples_a.html
我发现这个很有用: http ://www.ss64.com/ntsyntax/
堆栈溢出可能吗?
https://stackoverflow.com/questions/tagged/batch-file
我发现真正有用的是将所有内置的 cmd.exe 帮助保存到文件中。在 cmd.exe 中键入“help”,这将显示您可以获得帮助的命令的大列表,对于每个类型“help <command>”,然后将结果保存到适当命名的文件中。就我个人而言,我发现以文件形式阅读帮助信息要方便得多。
另外,我非常同意 Mike B 反对过多使用批处理文件的禁令。对于任何不重要的任务,使用比批处理更健壮的语言几乎总是更好。如果您的批处理文件在打印时超过一页,您几乎肯定会后悔。
尝试过维基百科的批处理文件条目?...或者谷歌给出的关于高级批处理文件使用的众多答案中的任何一个?