|
|
楼主 |
发表于 2015-11-28 13:18:59
|
显示全部楼层
本帖最后由 wzf1024 于 2015-11-28 13:23 编辑
不好意思,我是菜鸟,各位大侠见笑。
到目前我也没找到一步完成的方法,最后分几步完成:
1、提取第1行成文件名:
@echo off
for /f "tokens=1 delims=." %%i in ('dir /b *.txt') do (
for /f "tokens=1* delims=:" %%a in ('findstr /n .* %%i.txt') do (
if "%%a"=="1" ren "%%i.txt" "%%b".txt
)
)
pause
2、截短文件名至125个字:
setlocal enabledelayedexpansion
for /f "tokens=* delims=" %%i in ('dir /b /a-d *.txt') do (
set "line=%%i"
ren "%%i" "!line:~0,125!.txt"
)
pause
3、将截短的文件名写入第一行:
@echo off
for /f "delims=" %%a in ('dir /s /b *.txt') do (
echo %%~na>"%%a_tmp"
type "%%a">>"%%a_tmp"
move /y "%%a_tmp" "%%a"
)
求教哪位大侠能否整合一下,感激不尽!! |
|