在For-Loop中使用`grep`来自List

时间:2013-04-29 20:49:32

标签: bash list for-loop grep

是否可以在参数数组上使用grep来检入文件?例如:

 #!/bin/bash

 counter=0
 property_list=( "main.memory" "jvm.memory" ...)
 for i in "${property_list[@]}"
 do 
     for mLine in $(grep "${propert_list[counter]}" params.properties)
     do
            echo "$mLine"

     done
     let counter=counter+1
 done

for循环中grep的这种格式不起作用,因为它需要的属性多于所需的属性(可能是因为文件中有空格)。 此外,文件中的属性格式为main.memory=-min50m -max1024mfor循环以非列表格式循环返回两次并返回max1024m,理想情况下,我希望将min和max都保存到不同的变量,但一次只有一个桥.... / p>

谢谢,

1 个答案:

答案 0 :(得分:0)

已更改为awk

for mLine in $(awk "/${property_list[counter]}/" params.properties)
do
    echo "$mLine"
done