【发布时间】:2016-01-06 10:32:33
【问题描述】:
我正在尝试从列表中提取特定值。我的输入如下所示:
$ cat data.txt
Name: Mike
Age: 20
Date: June 1st
Color: Red
Name: Jon
Age: 22
Date: May 3rd
Color: Blue
Name: Jamie
Age: 18
Date: December 21st
Color: Green
Name: Chris
Age: 24
Date: July 5th
Color: Blue
然后我执行以下命令来提取一些数据:
grep Name data.txt|cut -c6-20 ; grep Color data.txt|cut -c7-20
返回:
Mike
Jon
Jamie
Chris
Red
Blue
Green
Blue
我希望它返回更像这样的东西:
Mike:Red
Jon:Blue
Jamie:Green
Chris:Blue
最后我希望能够指定 Color=blue 然后输出:
Jon
Chris
任何帮助完成这项工作将不胜感激。我对 bash 脚本非常陌生,并且一直在尝试通过这个网站和其他网站自学。
提前致谢!
【问题讨论】:
-
不要使用
grep。使用awk。
标签: bash shell unix command-line grep