awk命令简介

在今天的工作中,我想从文件file1中读取某一列。如果在以前,碰到这样的问题,我一定会通过如下语句实现:

new = []

with open(file1, 'r') as f:

        for line in f.readlines():

                new.append(line.strip().split('\t')[col])

那么有没有更为快速的方法呢?答案就是awk命令。对于上面这几行代码所实现的功能,awk只需一行代码就可以搞定:

awk '{print $col > "output.txt"}' file1.txt

如果我们想合并两个具有相同行数的文件a和b,也可以通过awk命令实现:

awk 'NR==FNR{a[NR]=$0;nr=NR;}NR>FNR{print a[NR-nr]"\t"$0 > "output.txt"}' a.txt b.txt

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容