cat 1.log | while read line; do echo $line|tr -d '"'|awk '{if((match($0,"tag1") == 0)&&(match($0,"tag2") > 0)){print substr($0,match($0,"tag3"),17),substr($0,match($0,"tag4"),33)}}'|awk '{print substr($0,0,match($0,"}")-1)}';done >> text.log
其中 tr -d '"' 为删除”。
substr为截取字符串函数。
match为子串位置确定函数。