我有300个名称不同的文件(.txt)。 我希望将每个文件的第二行复制到其文件名旁边,以复制为单个文本文件。 该文件的路径是D:\ WCR \
请帮助我在记事本中创建带有.Bat扩展名的脚本或在cmd中给出的命令
希望能早日收到答复。.
答案 0 :(得分:0)
此批处理文件可用于此任务:
@echo off
setlocal EnableExtensions DisableDelayedExpansion
set "SourceFolder=D:\WCR"
del "%SourceFolder%\SecondLines.log" 2>nul
for %%I in ("%SourceFolder%\*.txt") do call :ProcessFile "%%I"
endlocal
goto :EOF
:ProcessFile
for /F usebackq^ skip^=1^ delims^=^ eol^= %%L in (%1) do (
>>"%SourceFolder%\SecondLines.log" echo %~nx1: %%L
goto :EOF
)
goto :EOF
请注意,命令 FOR 始终忽略空行。因此,如果第二行是空行,则将下一个非空行写入LOG文件。
日志文件在源目录中创建。因此,日志文件的文件扩展名必须为txt
。
要了解所使用的命令及其工作方式,请打开命令提示符窗口,在其中执行以下命令,并非常仔细地阅读每个命令显示的所有帮助页面。
call /?
del /?
echo /?
endlocal /?
for /?
goto /?
set /?
setlocal /?
另请参阅: