下面的脚本获取与.new_tmp扩展,并将它们复制所有文件具有相同的名称,但没有.new_tmp扩展名的文件.此外,注释放在文件的顶部,并删除.new_tmp文件.
echo ^<?php /* > start.tmp
echo */ ?^> > end.tmp
for /R "./mydir" %%I in (*.new_tmp) do (
copy start.tmp+license.txt+end.tmp+%%I worker.tmp
move worker.tmp %%~pI%%~nI
del %%I
)
Run Code Online (Sandbox Code Playgroud)
问题是右侧箭头→会附加到所有文件的底部
为什么这个字符被附加到所有文件的末尾?
更新我尝试了一个更简单的例子,得到了相同的结果
copy NUL worker.tmp
copy worker.tmp + license.txt + license.txt + license.txt
Run Code Online (Sandbox Code Playgroud)
同样的问题,最后一个箭头......
我在Windows 7下运行
PA.*_*PA. 25
箭头是CTRL-Z ascii char,COPY当用于使用该+选项连接文件时,该命令将附加该命令.
要防止COPY附加CTRL-Z字符,请使用COPY /B二进制副本.
所以,你的命令就是
COPY /B start.tmp+license.txt+end.tmp+%%I worker.tmp
Run Code Online (Sandbox Code Playgroud)