我在目录D:\ test中有一个文件列表,我想通过使用批处理文件向D:\ test中每个文件的每一行添加前缀BLA_。完成此过程后,文件可以移动到D:\ test \ processed \,文件名也应该更改为BLA_file名称。
这听起来并不困难,但我没有设法创建一个工作批处理文件。希望有人可以帮助我!
提前致谢!
答案 0 :(得分:0)
建议sed:
sed -i "s/^/BLA_/" D:\Test\*
for %%a in (D:\Test\*) do move "%%~a" "D:\test\processed\BLA_%%~a"
答案 1 :(得分:0)
@echo off
setlocal enableextensions disabledelayedexpansion
set "inputFolder=d:\test"
set "outputFolder=%inputFolder%\processed"
for %%a in ("%inputFolder%\*"
) do (for /f "tokens=1,* delims=:" %%b in (
'findstr /n "^" "%%~fa" ^& del /q "%%~fa" ^>nul 2^>nul'
) do (echo BLA_%%c))>"%outputFolder%\BLA_%%~nxa"
endlocal
对于输入文件夹中的每个文件,读取输入文件,删除输入文件,并为所选输入文件中的每一行(findstr /n
用于避免空行跳过),将带有前缀的行回显到输出文件。