这段代码意味着什么?有人能给我解释一下吗?
set "txt=!txt:~0,-1!"
@echo off
setlocal EnableDelayedExpansion
set "txt="
set input=input.txt
for /f "delims=" %%a in (%input%) do (
set "txt=!txt!%%a,"
)
set "txt=!txt:~0,-1!"
>new.txt echo !txt!
此代码返回变量txt内容的子字符串。这两个数字表示请求的子字符串在变量txt的原始值中的开始和结束位置。第二个数字的负值表示倒计数。因此,在您的示例中,返回的值将是不带最后一个字符的变量txt的内容。有关此语法的更多信息,请参阅:https://ss64.com/nt/syntax-substring.html
它的意思是:'从变量中剪切最后一个字符!txt!'