批处理做这个挺麻烦,用vbs吧
Dim A,fso,fs
Dim fl,x
set Fso=CreateObject("Scripting.FileSystemObject")
set fs=Fso.OpenTextFile("a.txt",1)
set fl=Fso.CreateTextFile("b.txt",2)
A=Array("&","^","!")
Do While fs.AtEndOfLine <> True
call Ffunction(fs.readline)
Loop
Function Ffunction(t)
for each i in A
x=replace(t,i,"dos")
t=x
next
fl.writeline x
end Function