繁体   English   中英

字符串操作命令行窗口7

[英]string manipulation command line windows 7

我有这个脚本,我认为应该可以正常工作,我真正想要的是删除版本号两端的引号

echo  parsed in %1 %2
IF "%1%" == "BUILD_VERSION" (
    echo %2:~1,12%)

结果是:

S:\Office\Source\Framework\Code>echo  parsed in BUILD_VERSION "13.000.0000"
 parsed in BUILD_VERSION "13.000.0000"

S:\Office\Source\Framework\Code>IF "BUILD_VERSION" == "BUILD_VERSION" (echo "13.
000.0000":~1,12 )
"13.000.0000":~1,12

我尝试过的所有字符串函数都执行相同的操作。 我从这里得到了婴儿床的示例(我刚刚才意识到这不是stackoverflow) https://superuser.com/questions/228794/how-to-extract-part-of-a-string-in-windows-批处理文件

Stephan在第一条评论中所述,在%和参数编号之间, ~可以始终引用不带双引号的参数值,而参数与双参数无关地传递给批处理文件,带或不带双引号。

@echo parsed in %~1 %~2

批处理文件中的这一行用BUILD_VERSION "13.000.0000"调用会导致输出

parsed in BUILD_VERSION 13.000.0000

输入for /?或后,在命令提示符窗口中输出命令FOR的帮助for /? help for包含此替换的说明以及其他有关引用批处理文件的参数或命令FOR的变量的说明。

请参阅输入set /?显示的命令SET的帮助set /? 或在命令提示符窗口中help set以获取解释可用于修改环境变量值的内容。 但是,这些修饰符不能像Stephan在第二条评论中所写的那样,用于批处理参数或FOR命令的变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM