SET jobnumber=%CD:~6,6%
虽然我熟悉CD命令,但我以前从未见过这种特殊的语法,我无法找到准确的目的。我发现的最接近的事情是:
CD /d "%~dp0"
- 仅执行CD到批处理脚本文件的位置。但是,我找不到关于第一个示例中显示的确切语法的任何内容。在批处理文件中,稍后会调用该变量,如下所示:
SET filepath=C:\info\jobs\%jobnumber%
作业文件夹包含几十个子文件夹,所有这些子文件夹都有一个六位数的名称。剧本从未完成,所以没有什么可以继续下去,让我处于极度好奇的状态。想法?
答案 0 :(得分:2)
%CD%
变量包含当前目录。
另一种语法指定扩展的子字符串。
(来自set /?
)
%PATH:~10,5%
会扩展PATH环境变量,然后只使用5 从展开的第11个(偏移10)字符开始的字符 结果。如果未指定长度,则默认为 变量值的其余部分。如果是数字(偏移或长度) 否定,则使用的数字是环境变量的长度 值添加到指定的偏移量或长度。
%PATH:~-10%
将提取PATH变量的最后10个字符。
%PATH:~0,-2%
将提取除PATH变量的最后2个字符之外的所有字符。