以下批处理脚本打印出我当前的工作目录。
echo %cd%
但我没有定义 cd 变量。那么这个人呢?还有其他类似的东西吗?
我还检查了环境变量,没有名称为 cd 。这是内置在 cmd.exe ?
中感谢。
答案 0 :(得分:5)
请参阅HELP SET
...
如果启用了命令扩展, 然后有几个动态 可以的环境变量 扩大,但没有出现 显示的变量列表 组。这些变量值是 每次动态计算 变量的值被扩展。如果 用户明确定义变量 有了这些名字之一,那就是 定义将覆盖动态 一个描述如下:
%CD% - 扩展到当前 目录字符串。
%DATE% - 使用扩展到当前日期 格式与DATE命令相同。
%TIME% - 使用扩展到当前时间 格式与TIME命令相同。
%RANDOM% - 扩展为随机小数 数字介于0和32767之间。
%ERRORLEVEL% - 扩展到当前 ERRORLEVEL值
%CMDEXTVERSION% - 扩展到 当前命令处理器扩展 版本号。
%CMDCMDLINE% - 扩展为原始版本 调用的命令行 命令处理器。
答案 1 :(得分:2)
运行SET /?
,最后你会找到答案以及其他类似的变种。
我相信这个值是由命令shell存储的。
答案 2 :(得分:1)
It's a built-in behavior of the batch processor,与ERRORLEVEL
具有相同的基本行为。