Windows Batch 如何删除变量末尾3个字符并将结果存入新变量
解决方案
直接使用Windows Batch原生的字符串负偏移截取语法即可实现,无需依赖第三方工具或临时文件:
set string=abcdefghij set newstring=%string:~0,-3% echo %newstring%
运行上述代码后会直接输出你需要的abcdefg,结果已经存储在newstring变量中可以直接调用。
语法说明
Batch内置的子串扩展规则为 %变量名:~起始位置,截取长度%:
- 起始位置为正数时从字符串开头计数(0对应第一个字符),为负数时从字符串末尾反向计数
- 截取长度为负数时,代表从字符串末尾扣除对应长度的字符,不需要提前计算字符串总长度
- 要删除末尾3个字符,只需设置截取长度为
-3,起始位置为0(从头开始截取)即可。
内容的提问来源于stack exchange,提问作者Joe Jobs
相关产品推荐
相关产品推荐

