我有以下输入
- MyComposite[2.1],partition=default,mode=active,state=on,isDefault=true,deployedTime=2012-05-07T15:35:22.473-07:00
- MessageManager[1.0],partition=default,mode=active,state=on,isDefault=true,deployedTime=2012-05-07T15:37:14.137-07:00
- SimpleApproval[1.0],partition=default,mode=active,state=on,isDefault=true,deployedTime=2012-05-07T15:28:39.599-07:00
我有一个脚本,可以从文件中逐行解析输入,但我不知道如何将每行中的单个参数提取到局部变量中,以便执行其他过程
到目前为止,我正在尝试以下操作:
#!/bin/ksh
file="output"
compositeName="foo" ci=0
# while loop while read line do
# display line or do somthing on $line
if echo "$line" | egrep -q '\[[0-9]*\.[0-9]*\].*?(mode=active).*?
(state=on)' then compositeName=$( echo "$line" | egrep '[0-9]*' )
echo "$compositeName"
#echo "$line"
fi
done <"$file"
我很想从这个字符串中只提取两个值,第一个单词和括号之间的浮点数
IE:
名称 = MyComposite 版本 = 2.1
有任何想法吗?