题目:
有如下文本,其中前5行内容为
1111111:13443253456
2222222:13211222122
1111111:13643543544
3333333:12341243123
2222222:12123123123
用shell脚本处理后,按下面格式输出:
[1111111]
13443253456
13643543544
[2222222]
13211222122
12123123123
[3333333]
12341243123
思路:
- 先用sort cut uniq 排序冒号分割去重获取第一列内容
first=`sort -n $filename | cut -d: -f1 | uniq`
- 循环遍历,获取第一列是$i的,把第二列放入
for i in $first
do
echo "[$i]"
awk -F ':' '$1=='${i}' {print $2}' $filename
done