2015-04-16 57 views
0

狀態:Noobie 期望:在Windows命令設置一個變量到grep輸出Windows命令設置變量到grep輸出

我做了一些環顧四周,顯然,下面的策略應該工作。但雖然第一個grep輸出回顯給屏幕給出正確的輸出20 16 21 16 16作爲文件patterns.txt循環,但變量myvar報告爲始終爲16,即使我在每個循環中刪除tmpfile。

ECHO OFF 
For /f %%a in (patterns.txt) do (
    grep -E --count %%a Winter2015.tex 
    grep -E --count %%a Winter2015.tex > tmpfile 
    set /p myvar= < tmpfile 
    del tmpfile 
    echo %myvar% 
) 

我錯過了什麼?謝謝!

回答

1

您通過添加延遲變量擴展:

​​

而且使用!圍繞您的變量而不是%:

echo !myvar! 

請參閱this