不清楚你的实际文件/情况,仅以问题中的说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行
/*&cls&echo off
rem 在当前目录下多个txt文本文件内的每一行开头分别添加/插入自身文件名称的最后几位字符
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
set "newfolder=#result"
if not exist "%newfolder%" md "%newfolder%"
dir /a-d-h/b *.txt|cscript -nologo -e:jscript "%~f0" "%newfolder%"
echo;%#% +%$%%$%/%@% %z%
pause
exit
*/
var fso=new ActiveXObject('Scripting.FileSystemObject');
var oldfile=fso.GetFile(WSH.StdIn.ReadLine());
var newfile=fso.GetFolder(WSH.Arguments(0)).Path+'\\'+oldfile.Name;
var base=fso.GetBaseName(oldfile.Name);
var m=base.match(/.{6}$/);if(m){base=m[0];}
var f1=fso.OpenTextFile(oldfile.Path, 1);
var f2=fso.CreateTextFile(newfile, 2);
while(!f1.AtEndOfStream){
var line=f1.ReadLine();
f2.WriteLine(base+' '+line);
}
f2.Close();f1.Close();
WSH.echo(oldfile.Name);
WSH.Quit();