`
skydove
  • 浏览: 19318 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

awk多文件处理

阅读更多

a.txt内容如下:

a 150
b  200
c 100

 

b.txt内容如下:

abcd a 12.5
bbbb b 35
cccc c 42
dddd d 21

 

想要通过a.txt、b.txt得到ba.txt

abcd a 12.5 150
bbbb b 35 200
cccc c 42 100
dddd d 21

 

用awk简单搞定awk 'NR==FNR{map[$1]=$2;next}{print $0,map[$2]}' a.txt  b.txt  > ba.txt

 

解释:

    NR:读入的记录总数;FNR:当前文件的读入记录数(行数)

    读a.txt时,NR=FNR,都是3行,此时将a的第二个域得内容赋值到map中,其中key为第一个域的值,因为b的第二个域跟a的第一个域是一样的值,赋值完后,直接next不进行后面的{}里面的输出。

    当a读取完后,读取b时,NR==FNR不成立,所以执行第二个{}里的打印,因此得出结果。

 

shell功能就是强大啊~~~

分享到:
评论

相关推荐

    巧用AWK处理二进制数据文件

    但是,AWK的强大功能只针对纯文本文件,对于带有很多不可显示字符的二进制数据文件,单凭AWK就无能为力了。这时我们需要其他工具的帮助。 在Unix下,还有一个工具叫做OD,其全称是“display files in octal format...

    AWK文件处理总结

    ### AWK 文件处理总结 #### 一、AWK 入门篇 AWK 是一种强大的文本处理工具,常用于Linux/Unix环境下。它允许用户通过简单的脚本语言来进行复杂的文本处理任务。 **基本命令格式**: ```bash awk 'pattern { action...

    用awk数组处理两个文件

    在Shell脚本编程中,`awk`是一种强大的文本分析工具,尤其在处理文件时非常有用。...通过构建适当的数组结构和条件判断,我们可以解决多种文件处理问题,尤其在需要关联多个文件数据的情况下,`awk`数组显得尤为重要。

    linuxawk将多个文件结果列合并到一个文件整理.pdf

    awk 是一种功能强大的文本处理工具,可以用来处理和操作文本文件。下面是一个使用 awk 将多个文件结果列合并到一个文件的示例脚本: test.awk: ```awk #!/usr/bin/awk -f BEGIN { for (t = 1; t ; t++) { Index[t...

    awk文本处理工具

    awk可以从标准输入、文件或者其他命令的输出中获取数据,并通过自定义函数和动态正则表达式等功能,支持复杂的文本处理逻辑。 awk处理文本和数据的基本原理是逐行扫描文件,从文件的第一行开始,直到最后一行。它...

    unix shell awk 修改ini文件的脚本

    ### Unix Shell Awk 修改Ini 文件的脚本 在Unix环境下,对配置文件(尤其是INI格式的文件)进行处理是一项常见的需求。...虽然脚本相对简单,但它为理解和应用Unix Shell和Awk处理复杂文本文件提供了很好的示例。

    awk处理两个文件的方法

    用awk处理两个文件的方法:特定域的合并、替换等

    NS2 分析网络性能的AWK文件

    这就需要利用工具对这些数据进行处理和解释,以提取有意义的信息,这就是AWK文件的作用。 AWK是一种强大的文本分析语言,非常适合处理结构化的文本文件。在这个场景中,自编的AWK脚本被设计来解析NS2的TRACE文件,...

    awk学习awk学习awk学习awk学习

    2. **配置文件处理**: 对于需要解析和修改的配置文件,awk能够轻松实现自动化处理。 3. **文本数据处理**: 如需对CSV或TTSV等格式的文本数据进行筛选、排序或转换,awk都是非常有效的工具。 4. **网络监控**: 在实时...

    awk教程入门到精通

    管理awk文件的结构,包括设置变量、使用函数等。 6. 设置 awk 变量 设置 awk 变量来处理数据: awk -v var=10 '{ print $1, var }' processes 7. 多字段分隔符 使用 awk 多字段分隔符来处理数据: awk -F, '{ ...

    Linux入门培训教程 linux awk 多文件操作2种实现方法.pdf

    1. **直接读取多个文件**:通过awk内置的功能直接打开并处理多个文件,无需使用额外的命令来合并文件。 2. **利用awk内部变量**:利用`FILENAME`、`NR`、`FNR`等内部变量来区分当前处理的是哪个文件以及文件中的哪一...

    AWK用法AWK用法AWK用法

    根据提供的文件标题、描述、标签...以上示例涵盖了AWK的许多基本和高级功能,包括条件判断、字段操作、数学运算以及文件处理技巧。通过这些示例的学习,可以更好地掌握AWK的强大能力,从而高效地解决各种文本处理任务。

    shell之awk proc文件系统,if_inet6 文件打包

    综合这些文件,你可以构建起对shell脚本、`awk`文本处理工具以及`proc`文件系统的全面认识。通过学习,你将能够编写出更复杂的shell脚本来处理网络状态监控、数据分析等任务,提高日常运维工作的效率。记住,实践是...

    awk思维导图-jpeg单文件

    awk是Linux/Unix环境中强大的文本分析工具,它允许用户通过指定模式来处理和操作文本文件。这个"awk思维导图.jpeg单文件"很显然是为了帮助初学者更好地理解和掌握awk命令的工作原理及其应用。思维导图通常以图形化的...

    Unix_Awk手册

    1. **广泛的应用场景**:Awk 适用于处理文本文件中的模式扫描和数据处理任务,类似于轻量级的数据库操作。它可以轻松地读取、编辑、理解和处理文本文件。 2. **简洁性**:与 C 或 C++ 相比,Awk 更加简单易用。它...

Global site tag (gtag.js) - Google Analytics