如何从路径中仅提取文件名?

如何从路径中仅提取文件名?

我正在运行代码,

set /p "filepath=Drag and drop your file >"
cls
echo Your file name is : %filepath%
pause>nul

我得到的输出

Your file name is : c:/users/philip/desktop/file.txt

当用户在命令提示符中拖放文件并按回车键时,它会显示完整的文件路径作为输出。

预期输出

Your file name is : file.txt

但是,我期望的是,只有带扩展名的文件名..如上所示作为输出。

注意:文件路径和文件名可能有所不同。

答案1

你可以使用这个:

set /p "filepath=Drag and drop your file >" 
cls 
for %%a in ("%filepath%") do echo Your file name is: %%~nxa
pause >nul

这里nx是元变量的修饰符。要了解更多信息,请打开 cmd 并输入for /?并查看末尾。

相关内容