什么是批量设置变量=%变量:~1%

时间:2014-03-19 12:25:56

标签: batch-file cmd

任何人都可以在批处理文件中解释下面语句中的:~1%是什么吗?我将%variable的值分配给servername并尝试echo %variable。我获得与输出相同的服务器名称。任何人都可以解释下面的陈述是如何工作的吗?

set variable=%variable:~1%

2 个答案:

答案 0 :(得分:5)

这是来自变量内容的子字符串的语法,在这种情况下,它会删除第一个字符。

请参阅set /?寻求帮助

答案 1 :(得分:5)

这是子字符串扩展的表示法,看看你会理解的这个输出表单命令行。

C:\>set temp=stackoverflow.com

C:\>echo %temp%
stackoverflow.com

C:\>echo %temp:~5%
overflow.com

C:\>echo %temp:~5,8%
overflow

C:\>

如果你还没有理解,这里是语法(用我的话说)

set variable=%variable:~startingCharector [,OptionalLenghtOfCharctors]%

,其中

默认情况下,

OptionalLenghtOfCharctors会占用字符串的剩余字符。