在Windows批处理文件中的SET上使用变量

道特

我正在尝试在此处使用变量而不是固定数字:

set PACK_VERSION=Testing12345
set PACK_VERSION=%PACK_VERSION:~7,100%
echo %PACK_VERSION%

除了这个数字7,我想使用一个变量,如下所示:

set VARNUM=7
set PACK_VERSION=Testing12345
set PACK_VERSION=%PACK_VERSION:~%VARNUM%,100%
echo %PACK_VERSION%

我不知道如何正确插入,有人可以帮忙吗?谢谢!

史蒂芬

“通常”的方式是使用延迟扩展

setlocal enabledelayedexpansion
set VARNUM=7
set PACK_VERSION=Testing12345
set PACK_VERSION=!PACK_VERSION:~%VARNUM%!
echo %PACK_VERSION%

但也有一个小技巧可以做到而不会延迟扩展(您必须对行进行两次解析,call是一种很好的方法):

set VARNUM=7
set PACK_VERSION=Testing12345
call set PACK_VERSION=%%PACK_VERSION:~%VARNUM%%%
echo %PACK_VERSION%

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

在批处理文件中定义和使用变量

在Powershell中设置批处理文件的变量

从Windows批处理文件调用SUBST

如何将大于和小于添加到批处理文件变量中

替换批处理文件变量进给ffmpeg程序中的特殊字符

忽略批处理文件中以#开头的处理行

如何使用批处理文件或PowerShell清除Windows剪贴板?

如何验证批处理文件中是否存在文件?

R中的批处理文件中的setwd()

在批处理文件网址中添加加号

批处理文件中的字符串替换问题

如何在jenkins的Windows上使用批处理命令输出设置变量值

Windows批处理文件从定界符之间没有数据的文件读取

如何通过批处理文件中的时间戳识别/获取文件?

批处理文件以计数子目录中的文件类型

批处理文件以从txt文件中删除前18个字符

批处理文件中的空白,并保存在其他目录中

从Java流程执行时,跳过批处理文件中的暂停命令

使用Python运行批处理文件时出现问题

批处理文件以删除超过N天的文件

将HEX值写入Windows批处理中的文件

运行时安全修改批处理文件

如何在批处理文件中提示用户输入

运行多个批处理文件,但有例外

批处理文件,将所有文件内容读入单个文件

批处理脚本将变量内容回显到文本文件中

从批处理文件调用脚本时如何指定开关参数

从批处理文件运行Powershell命令以重命名网络驱动器

尝试创建批处理文件以将Sharepoint映射为网络驱动器

TOP lista

quentelabel

Arquivo