我已经很接近我想要什么和脚本文件是否只清洁运行良好,但大多有几个每行注释,他们几个人在/* ... */
里面的块需要删除其他垃圾。过程包含在几个文件中的字符串(Windows批处理)
所以我只是想处理具有字符串level.waypoints
这里是我现在有行:
@echo off
setlocal enableDelayedExpansion
set findtext="level.waypoints"
for %%F in (*.gsc) do (
set "out="
set "i=x"
> "%%~nF.cfg" (
for /f usebackq^ tokens^=2^,4^,5^ delims^=[]^=(^)^;^"^ %%A in ("%%F") do (
if %%A neq !i! (
if defined out echo !out!"
set /a "i=%%A, j=0"
set "out=set flwp_!i! "!i!"
) else (
set /a j+=1
if !j! leq 3 (set "out=!out!,%%B") else set "out=!out!,%%C"
)
)
if defined out echo !out!"
set /a "fim=i+1"
echo set flwp_!fim! "eof"
)
)
我想在添加findstr %findtext%
到这些循环,但我在许多不同的方式tryed ,但没有成功,但可悲...你能帮我吗?
非常感谢你!
请解释一下你正在努力实现由[编辑]脚本(http://stackoverflow.com/什么帖子/ 40093874 /编辑)你的问题!如果没有反向工程,就不可能得到你的意图... – aschipfl
@aschipfl FOR是完美的,并且工作正常...我只是希望语法将其更改为仅使用此字符串处理行。或者在执行之前从每个* .gsc文件中清除everyline的脚本也可以工作,我认为这会更简单。 – Hajas
你尝试更改设置你的'从'( “%% F”)/ F'循环''到( '发现 “level.waypoints” “%%〜F”')'?你正在努力实现的是什么? – aschipfl