If Command Extensions are enabled SET changes as follows: SET command invoked with just a variable name, no equal sign or value will display the value of all variables whose prefix matches the name given to the SET command. For example: SET P would display all variables that begin with the letter 'P' SET command will set the ERRORLEVEL to 1 if the variable name is not found in the current environment. SET command will not allow an equal sign to be part of the name of a variable. Two new switches have been added to the SET command: SET /A expression SET /P variable=[promptString] The /A switch specifies that the string to the right of the equal sign is a numerical expression that is evaluated. The expression evaluator is pretty simple and supports the following operations, in decreasing order of precedence: () - grouping ! ~ - - unary operators * / %% - arithmetic operators + - - arithmetic operators << >> - logical shift - bitwise and ^ - bitwise exclusive or | - bitwise or = *= /= %%= += -= - assignment &&= ^= |= <<= >>= , - expression separator If you use any of the logical or modulus operators, you will need to enclose the expression string in quotes. Any non-numeric strings in the expression are treated as environment variable names whose values are converted to numbers before using them. If an environment variable name is specified but is not defined in the current environment, then a value of zero is used. This allows you to do arithmetic with environment variable values without having to type all those %% signs to get their values. If SET /A is executed from the command line outside of a command script, then it displays the final value of the expression. The assignment operator requires an environment variable name to the left of the assignment operator. Numeric values are decimal numbers, unless prefixed by 0x for hexadecimal numbers, and 0 for octal numbers. So 0x12 is the same as 18 is the same as 022. Please note that the octal notation can be confusing: 08 and 09 are not valid numbers because 8 and 9 are not valid octal digits.
If Command Extensions are enabled ENDLOCAL changes as follows: If the corresponding SETLOCAL enable or disabled command extensions ...
If Command Extensions are enabled GOTO changes as follows: GOTO command now accepts a target label of :EOF which transfers ...
If Command Extensions are enabled IF changes as follows: IF /I string1 compare-op string2 command IF CMDEXTVERSION number ...
If Command Extensions are enabled MKDIR changes as follows: MKDIR creates any intermediate directories in the path, if needed. ...
If Command Extensions are enabled SET changes as follows: SET command invoked with just a variable name, no equal sign or ...
If Command Extensions are enabled SETLOCAL changes as follows: SETLOCAL batch command now accepts optional arguments: ENABLEEXTENSIONS ...
If Command Extensions are enabled the DATE command supports the /T switch which tells the command to just output the current ...
If Command Extensions are enabled the POPD command will delete any temporary drive letter created by PUSHD when you POPD ...
If Command Extensions are enabled the PROMPT command supports the following additional formatting characters: $+ zero or ...