合聚咖

合聚咖

批处理将一个指定文件夹下所有txt文件文件名后6位加到文件里每一行的前面,生成新的文件存放到指定目录

admin

不清楚你的实际文件/情况,仅以问题中的说明为据;以下代码复制粘贴到记事本,另存为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();