需要一个批处理脚本来grep一个模式并设置一个变量

时间:2015-05-07 06:07:05

标签: batch-file

因为我试图从文件中grep一个模式,然后需要使用批处理脚本存储在一个变量中。我正在使用下面的代码,但它没有按预期工作:

for /f %%A in (grep "USI" %1/%CNID%.log | awk '{print substr($17,5,9)}') do set "var=%%A"

1 个答案:

答案 0 :(得分:1)

更改了引号并删除了不需要的grep命令

for /f "delims=" %%A in ('
    awk "/USI/{print substr($17,5,9)}" "%1\%CNID%.log"
') do set "var=%%A"

或者,如果真的需要grep,你还需要逃避管道

for /f "delims=" %%A in ('
    grep "USI" "%1\%CNID%.log" 
    ^| awk "{print substr($17,5,9)}"
') do set "var=%%A"