awk之特征相同行的合并

文本:

1001  hisk01
1001  hisk02
1001  hisk03
1002  hisk04
1002  hisk05
1002  hisk06
1003  hisk07
1003  hisk08
 
特征相同的合并成一行:
1001 hisk01 hisk02 hisk03
1002 hisk04 hisk05 hisk06
1003 hisk07 hisk08
 

awk '{if($1==x){i=i" "$2}else{if(NR>1){print i};i=$0};x=$1;y=$2}' file <(echo)
[解析]
这也是老生常谈的内容了,不过这句代码有两个新颖的地方,按照这种判断格式比较更科学一些。<(echo)这是 yinyuemi老师 的一种新写法,可以省略掉最后的 END 输出,很实用。
  
awk '{a[$1]=a[$1]?a[$1]" "$2:$2}END{for(i=0;i++<asorti(a,b);)print b[i],a[b[i]]}' file
sed ':a;N;s/\(.* \)\( .*\)\n\1/\1\2/;ta;P;D' file
 
 我自己写的,繁琐~~
awk '{a[$1]++; b[$1, a[$1]]=$2}END{for(i in a) {printf("%s: ", i); for(j=1; j<=a[i]; j++) printf("%s ",b[i,j]); printf("\n")}}' data

awk之特征相同行的合并 ~转的更多相关文章

  1. awk特征相同行的合并

    [root@linux-node1 ~]# cat test.txt hisk01 hisk02 hisk03 hisk04 hisk05 hisk06 hisk07 hisk08 [root@lin ...

  2. Bootstrap-table实现动态合并相同行(表格同名合并)

    写在前面: 有时候表格的需求就是奇奇怪怪的,最近要做的表格需要实现当紧挨着的记录的某一列的行元素内容相同,就将其合并.要是不是相同的就不合并.如果表格数据的顺序不需要被改变,这个样子是可以很简单就完成 ...

  3. easyui-datagrid合并相同行功能扩展

    //合并相同行$.extend($.fn.datagrid.methods, { autoMergeCells: function (jq, fields) { return jq.each(func ...

  4. awk 特征相同的行合并

    [root@linux-node1 ~]# cat test.txt hisk01 hisk02 hisk03 hisk04 hisk05 hisk06 hisk07 hisk08 [root@lin ...

  5. Bootstrap-table实现动态合并相同行

    Bootstrap-table  表格合并相同名字的列 @编写function() /** * 合并行 * @param data 原始数据(在服务端完成排序) * @param fieldName ...

  6. VBA实现相同行合并

    帮人捣鼓了个VBA代码用来实现多行合并,具体需求为:列2/列3/列4 相同的情况下,则对应的行合并为一行,且列1用空格隔开,列5则相加: (对大多数办公室职员,VBA还算是提高效率的一个利器吧) 最终 ...

  7. JS 实现Table相同行的单元格自动合并示例代码

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  8. easyui datagrid 合并相同行

    $.extend($.fn.datagrid.methods, { autoMergeCells: function (jq, fields) { return jq.each(function () ...

  9. awk 两列相减

    cat http.txt  |awk -F ':' '{print($2-$3)}' 百度文库

随机推荐

  1. HDU 3622 Bomb Game

    Description \(n\) 个炸弹,每个炸弹有两个放置点,可以任选一个,问你最大的半径是多少. Sol 二分+2-SAT+Tarjan. 首先二分一下答案.然后就成了一个2-SAT问题. 建模 ...

  2. SharePreferences的DB实现

    存储一些简单数据的时候,最快的实现是用SharePreferences,但SharePreferences的可靠性不高,在某些非官方ROM上,总是存取失败.后来想到用数据库来存取.产品中,存取的数据项 ...

  3. php时区问题

    今天遇到一个很诡异的问题: 数据库中存的日期信息为时间戳,用php取出数据库中的日期信息,并用date()函数转化为“Y-m-d”后,发现和mysql格式化函数Date_Format()处理后的结果不 ...

  4. hash模块 hashlib 和hmac

    hashlib模块 用于加密相关的操作,代替md5模块和sha模块,主要提供SHA1,SHA224,SSHA256,SHA384,SHA512,MD5算法 直接看代码案例: ---------md5- ...

  5. Javascript 执行环境及作用域

    执行环境是javascript中最为重要的一个概念. 执行环境定义了变量或函数有权访问的其他数据,决定了他们各自的行为. 每个执行环境都有一个与之关联的变量对象(variable object),环境 ...

  6. php面试题2

    php面试题及答案(原创)收藏 基础题: 1.表单中 get与post提交方法的区别? 答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息. 2 ...

  7. 【leetcode】Perfect Squares (#279)

    Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 1 ...

  8. Android-- ImageLoader-- UIL doesn't support scheme(protocol) by default [pg].

    在ImageLoader加载图片是, 地址是容易出错的,特别是本地图片: String imageUri = "http://site.com/image.png"; // fro ...

  9. linux学习笔记-前篇

    大学毕业已经快三年了,从事嵌入式开发的工作也快三年了. 不过,老干些裸机开发,感觉很是枯燥,一咬牙一跺脚,决定从今天开始学习Linux操作系统,顺便记录下学习过程中所遇到的问题与心得. 自己从前完全没 ...

  10. Xamarin设备相关图片尺寸要求

    Xamarin设备相关图片尺寸要求   Xamarin跨平台开发,要兼顾iOS.Android.尤其是图片方面,各个平台有对应的不同要求.在iOS中,需要提供没有后缀(设备无关单位尺寸).@2x(双倍 ...