我基本上有很多文件,通常是 .xls 或 .pdf 格式,我需要从每个文件中删除前 8 个字符。标准格式类似于:
abc 123 恢复文件名iwanttokeep.pdf
我想摆脱'abc 123'并且我有一些似乎适用于某些文件但不适用于其他文件的代码,见下文 -
@echo off
setlocal enabledelayedexpansion
LFNFOR On
for %%a in (*.pdf) do (
set oldName=%%a
set newName=!oldName:~8!
Ren "%%a" "!newName!"
)
endlocal
对于某些文件,它可以工作,对于其他文件,它最多删除了 10 个字符,我不知道为什么,是因为最后一个字符是空格吗?但如果是这样,为什么它适用于某些而不适用于其他?它非常令人困惑。
我在 Win XP 上并使用批处理文件来执行此操作。
任何帮助,将不胜感激。
亚当