我正在递归地遍历所有JS文件并缩小它们。然而,我必须保留一些JS文件完整。
我在使用for
、dir
和findstr
组合时取得了很大的成功。但是当我想忽略已经缩小的文件(以“-min.js”结尾的文件)时,FINDSTR命令就中断了。
这是我使用的命令:
for /f %i in ('dir /b /a-d /s "D:\update" ^| findstr /liv "\admin" ^| findstr /ile ".js" ^| findstr /vile "-min.js" ^| findstr /vile ".min.js"') do echo %i
有以下错误:
FINDSTR: /. ignored
FINDSTR: /j ignored
FINDSTR: Bad command line
FINDSTR: Write error
FINDSTR: Write error
FINDSTR: Write error
FINDSTR: Write error
问题当然是findstr /vile "-min.js"
子句,但是我不知道为什么连字符会导致问题,因为我使用的是/l (文字)标志。
发布于 2021-12-14 16:08:20
作为using escape characters or /c:的另一种选择,我发现findstr还与前导破折号合作,如果您至少包含一个空格作为前缀(不按字面意思搜索时不影响匹配)。
findstr /vile " -min.js"
https://stackoverflow.com/questions/46237478
复制相似问题