我需要一种从路径中删除文件结尾的方法,但如果文件结尾包含一个星号,我就无法这样做,例如* .xsd,关于如何做到这一点的任何想法?
示例批处理脚本:
SET xsd_path=xsd\file.xsd REM This does work
SET xsd_path=xsd\*.xsd REM This does not work
FOR %%i IN ( "%xsd_path%" ) DO ( set xsd_filepath=%%~pi )
ECHO "Filepath: %xsd_filepath%"
答案 0 :(得分:3)
试试这个:
@echo off
SET "xsd_path=xsd\file.xsd"
SET "xsd_path=xsd\*.xsd"
FOR /f %%i IN ( "%xsd_path%" ) DO ( set "xsd_filepath=%%~dpi" )
ECHO "Filepath: %xsd_filepath%"
pause
请注意,我还在set语句周围加上引号,因此尾随空格不会添加到变量中。您还拼错了xsd_filepath
并加了h
。