【发布时间】:2013-04-17 23:06:54
【问题描述】:
当一个文件连同相对路径或完整路径...作为批处理的参数给出时,我知道如何扩展 %1 以获取文件名
%~n1
这很简单!
尽管如此,我想从批处理中正确处理的相对/完整路径中获取文件名。
请看我的代码。我想扩展 %%x (在我的例子中是相对路径)以仅考虑其文件名。请问你有什么想法吗?谢谢
@echo off
SETLOCAL EnableDelayedExpansion
set currDir=%CD%
for /f "tokens=*" %%x in (Lists.out) do (
echo %%x
set filetxt=%%x)
这是一个示例“Lists.out”文件,其中包含一些不同的文件内置相对路径。 “Lists.out”可以由
组成 Temp\my file1_X
Temp\my file2_X
...............
【问题讨论】:
-
您应该使用
"delims="而不是"tokens=*"。然后,如果您想将%%x扩展为一个完整的驱动器:path\filename.ext 使用%%~fx。请参阅help for的最后几页了解更多信息。
标签: batch-file filenames