我的目标是创建批处理脚本,从文件(如 css 文件)中删除行本身(如果可能)或给定行中的文本。
css 文件
line
199
200 /* K2START */
201 .foo { width: 1 }
202 .bar { width: 2 }
203 /* K2END */
204
我想删除行200
和行之间的文本203
(包括注释部分)。行号可以更改,因为其他人可能会在文件中添加更多文本。所以我的选择是查找文本K2START
,K2END
然后删除这些行之间的文本。
批处理脚本
这返回"200: /* K2START */"
很棒。但我只是不知道如何获取行号值“200”并使用它。
findstr /N "K2START" "%K2DIR%\K2 smartforms Designer\Styles\Themes\Sun.css"
我还尝试循环遍历 css 文件的每一行以练习循环,但不知何故,不是进入 css 文件中的每一行文本,而是将整个路径字符串(即"%K2DIR%\K2 smartforms Designer\Styles\Themes\Sun.css"
)视为令牌。
FOR /F "tokens=*" %%G IN ("%K2DIR%\K2 smartforms Designer\Styles\Themes\Sun.css") DO (
@echo %%G
)