使用 dir 从 Txt 文件中提取文件名
Extract File Name from Txt File with dir
我有一个txt文件,用于存储一个bat中使用的目录。
在bat中我需要设置两个变量。完整目录,然后只是目录中的文件名。我查看了与之相关的命令,发现了这个:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true
其中说我需要 %~n1 命令。
txt 文件中的目录是:
O:\Folder1\Folder2\Folder3\Station 5 日志 20150324.CSV
所以在我的蝙蝠中我尝试使用这个:
set /p LogFile=<"C:\Users\XXXX\Desktop\Macro Folder\LogFile.txt"
set /p FileName=<%~n1"C:\Users\XXXX\Desktop\Macro Folder\LogFile.txt"
这没有按照我想要的方式工作。 FileName 应该 return 目录末尾的文件名。 "Station 5 Log 20150324.CSV"
所以我 运行 进行了一个快速测试,看看我是否可以弄清楚我需要什么设置才能从目录中提取文件名,运行 这个:
Echo on
Rem References the current week text file to find the name of the current week folder it should be saving to
set /p LogFile=<"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"
set /p FileName1=<%~n1"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"
set /p FileName2=<"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"%~n1
set /p FileName3=<"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"
echo %LogFile%
echo %FileName1%
echo %FileName2%
echo %~n1%FileName3%
echo %FileName3%
Pause
None 这些选项似乎 return 只是文件名,它们实际上让我问了比我想要的更多的问题,所以我来了。关于如何从 txt 文件中获取文件名的任何想法?
[windows7]
set /p LogFile=<"C:\Users\XXXX\Desktop\Macro Folder\LogFile.txt"
for %%a in ("%LogFile%") do set "FileName=%%~nxa"
for
命令使用变量创建文件引用,存储在%%a
中,我们只是获取引用文件的名称和扩展名。
我有一个txt文件,用于存储一个bat中使用的目录。
在bat中我需要设置两个变量。完整目录,然后只是目录中的文件名。我查看了与之相关的命令,发现了这个:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true 其中说我需要 %~n1 命令。
txt 文件中的目录是: O:\Folder1\Folder2\Folder3\Station 5 日志 20150324.CSV
所以在我的蝙蝠中我尝试使用这个:
set /p LogFile=<"C:\Users\XXXX\Desktop\Macro Folder\LogFile.txt"
set /p FileName=<%~n1"C:\Users\XXXX\Desktop\Macro Folder\LogFile.txt"
这没有按照我想要的方式工作。 FileName 应该 return 目录末尾的文件名。 "Station 5 Log 20150324.CSV"
所以我 运行 进行了一个快速测试,看看我是否可以弄清楚我需要什么设置才能从目录中提取文件名,运行 这个:
Echo on
Rem References the current week text file to find the name of the current week folder it should be saving to
set /p LogFile=<"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"
set /p FileName1=<%~n1"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"
set /p FileName2=<"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"%~n1
set /p FileName3=<"C:\Users\xxxx\Desktop\Macro Folder\LogFile.txt"
echo %LogFile%
echo %FileName1%
echo %FileName2%
echo %~n1%FileName3%
echo %FileName3%
Pause
None 这些选项似乎 return 只是文件名,它们实际上让我问了比我想要的更多的问题,所以我来了。关于如何从 txt 文件中获取文件名的任何想法?
[windows7]
set /p LogFile=<"C:\Users\XXXX\Desktop\Macro Folder\LogFile.txt"
for %%a in ("%LogFile%") do set "FileName=%%~nxa"
for
命令使用变量创建文件引用,存储在%%a
中,我们只是获取引用文件的名称和扩展名。