如何编写一个具有公共标头的批处理

How to write a batch with a common header in it

本文关键字:批处理 何编写 一个      更新时间:2023-09-26

我需要排除所有内部有标题"XYZ"的JavaScript文件。如果文件中存在模式"XYZ",那么批处理应该将文件重命名为*.js.exclude。我在不同子文件夹中的源中有将近189个js文件。任何可以完成上述操作的编写批次的帮助都将受到

的赞赏

使用findstr
/m获取文件名
/s也无法处理子文件夹
(如果需要,/i可忽略大写)

在其周围放置for循环以重命名文件:
使用%%a作为完整路径/文件名
仅对文件名和扩展名使用%%~nxa
将文件名用引号括起来以处理路径/用空格分隔的文件名
出于同样的原因,使用"delims="

for /f "delims=" %%a in ('findstr /s /m "XYZ" *.js') do ECHO ren "%%a" "%%~nxa.exclude"

调试后,如果输出正常,请删除ECHO