我需要知道Windows 7,Windows 8和Windows 10中批处理之间是否存在语法差异。
谢谢。
答案 0 :(得分:3)
Windows 7和8必须相同。在Windows 10中,有一些新功能和错误修复。差异很小(太小而不能称之为语法差异)但仍然存在。
1)This bug(问题已经结束但我认为仍然可读)例如引起了MS的注意。此代码将在7和8上崩溃命令提示符,但不会在10:
上崩溃@echo off
rem do not set new lines at the end or you'll break the breaker
echo combobreaker |(>^
2)在Windows 10上,这将启用命令提示符的"debug" mode(而不是bug模式..),而在win7 / 8上不起作用
break&(:#)
对于win7 / 8,您必须使用256个左括号的序列。要退出" debug"在win10上你可以使用256个@
符号的序列,但这不适用于win7 / 8。
4)Windows 10控制台可能有不同的行为,具体取决于" Legacy console"是used or not:
5)Windows 10 supports VT-100 escapes
6)两个新的环境变量:FPS_BROWSER_USER_PROFILE_STRING,FPS_BROWSER_APP_PROFILE_STRING - 可能与边缘浏览器相关
不确定这些是否重要。
7)一个新的命令行工具 - clipup - 我不知道用于什么。
8)可以使用WMIC命令访问的一些新的WMI类。
.NET类和powershell中也有新的增强功能,但这些增强功能已经远离命令提示符。