Batch file 字符串操作在批处理中删除部分变量

Batch file 字符串操作在批处理中删除部分变量,batch-file,Batch File,我正在制作一个批处理文件,它有一个变量设置为文本文件。问题是我还需要制作一个带有变量名的文件夹,但需要从变量中删除“.txt” 用户选择一个文本文件,这样列表将类似 所以变量也将是list.txt,但我需要从变量中删除.txt 我试着在网上搜索,但找不到解决方案 set /p list=list name: mkdir %list% 变量将表单list.txt更改为list如果您只想从文件名中删除文件扩展名,则执行命令非常简单。如果阅读for命令的帮助文件,您将看到可以非常轻松地修改for变

我正在制作一个批处理文件,它有一个变量设置为文本文件。问题是我还需要制作一个带有变量名的文件夹,但需要从变量中删除“.txt”

用户选择一个文本文件,这样列表将类似 所以变量也将是list.txt,但我需要从变量中删除.txt

我试着在网上搜索,但找不到解决方案

set /p list=list name: 
mkdir %list%

变量将表单list.txt更改为list

如果您只想从文件名中删除文件扩展名,则执行命令非常简单。如果阅读
for
命令的帮助文件,您将看到可以非常轻松地修改
for
变量输出。打开命令提示符,键入:
以获取/?
阅读帮助。最后几节解释了如何修改文件名和文件路径的输出

如果要删除扩展名并只获取基本文件名,可以这样做

set /p "list=list name:"
FOR %%G IN ("%list%") DO SET "list=%%~nG"
mkdir "%list%"