Bri*_*ndy 2 build-automation automated-tests dos batch-file
有没有办法使用.bat/.cmd文件获取字符串的子字符串?
例如,给定字符串"hello.txt"有没有办法剥离.txt?
编辑:还有一种更通用的方法来做到这一点,而不是假设它是一个文件名或文件路径?
如果这是作为参数传递的文件,则可以使用%~n1,如下所示:
test.bat
----------
echo %~n1 %~n2
c:\> test.bat myfile.txt my.long.file.bat
myfile my.long.file
Run Code Online (Sandbox Code Playgroud)
如果您知道字符串的长度,则可以使用子字符串运算符:
echo %variable:0,4% => "test.txt" => "test"
Run Code Online (Sandbox Code Playgroud)
除了最后4个字符之外,还要获得所有内容:
echo %variable:~0,-4% => "file...name.txt" => "file...name"
Run Code Online (Sandbox Code Playgroud)