首页 > 系统相关 >linux 中 awk命令实现文件按列精确匹配合并

linux 中 awk命令实现文件按列精确匹配合并

时间:2023-09-08 13:55:24浏览次数:41  
标签:FS test01 pc1 按列 awk linux ay txt

 

001、

[root@pc1 test01]# cat a.txt
A:10
B:5
C:12
[root@pc1 test01]# cat b.txt
100 A
50 B
88 K
99 Y
42 C
[root@pc1 test01]# awk '{if(NR == FNR) {ay[$1] = $2} else {print $2, $1, ay[$2]}}' FS=":" a.txt FS=" " b.txt
A 100 10                 ## 一般输出
B 50 5
K 88
Y 99
C 42 12
[root@pc1 test01]# awk '{if(NR == FNR) {ay[$1] = $2} else if($2 in ay) {print $2, $1, ay[$2]}}' FS=":" a.txt FS=" " b.txt
A 100 10                 ##  精确输出
B 50 5
C 42 12

。 

 

标签:FS,test01,pc1,按列,awk,linux,ay,txt
From: https://www.cnblogs.com/liujiaxin2018/p/17687377.html

相关文章

  • linux 中awk命令同时多多个文件指定分隔符
     001、正确做法[root@pc1test01]#lsa.txtb.txt[root@pc1test01]#cata.txtA:10B:5C:12[root@pc1test01]#catb.txt100A50B42C[root@pc1test01]#awk'{if(NR==FNR){print$2}else{print$1}}'FS=":"a.txtFS=""b......
  • linux 中 awk命令实现文件按列匹配
     001、方法1[root@pc1test01]#lsa.txtb.txt[root@pc1test01]#cata.txtA:10B:5C:12[root@pc1test01]#catb.txt100A50B42C[root@pc1test01]#awk-F"[:]"'{if(NR==FNR){ay[$1]=$2}else{print$2,$1,ay[$2]}}'a.txtb......
  • linux 中awk命令指定读入分隔符
     001、-F指定[root@pc1test01]#lsa.txt[root@pc1test01]#cata.txta:b:c3:8:kf:6:3[root@pc1test01]#awk-F":"'{print$1}'a.txta3f 002、-vFS变量指定[root@pc1test01]#lsa.txt[root@pc1test01]#cata.txta:b:c3:8:k......
  • Linux shell 环境变量 All In One
    Linuxshell环境变量AllInOne全局环境变量,systemwideenvironment系统级环境变量局部环境变量,localwideenvironment用户自定义环境变量shell的3种启动方式登录默认的交互式shell非登录的交互式shell运行脚本的非交互式shellshell的常见类型shba......
  • heijin_linux驱动笔记
    驱动程序的作用:1)向linux内核注册/注销设备号,创建/删除设备节点文件(这个操作可以分离出来),供应用程序调用。(设备节点文件中的设备号要与驱动程序申请注册的设备号一致)2)将物理地址转为虚拟地址进行设备操作,将应用程序的文件调用转为对自定义的驱动函数调用;驱动的创建:配置环境变量(......
  • Linux命令(74)之unzip
    linux命令之unzip1.unzip介绍linux命令是用来解压缩名称后缀为".zip"的文件2.unzip用法unzip[参数]filenname.zipunzip常用参数参数说明-l显示压缩文件内所包含的文件-t检查备份文件是否正确无误-v显示命令执行详细过程-q不显示命令执行过程-P<密码>使用unzip的密码选项-d......
  • linux centos 安装 openssl和httpd错误。
    一、出现如下错误;ab.o:Infunction`ssl_print_cert_info':/srv/httpd-2.4.57/support/ab.c:666:undefinedreferenceto`X509_get_version'/srv/httpd-2.4.57/support/ab.c:668:undefinedreferenceto`X509_getm_notBefore'/srv/httpd-2.4.57/support/ab.c......
  • linux命令行常用快捷键
    在Linux终端中,常见的行跳转指令和技巧:使用Ctrl键加上其他按键:Ctrl+A:将光标移至当前行的开头。Ctrl+E:将光标移至当前行的末尾。Ctrl+U:删除光标位置到行首的所有内容。Ctrl+K:删除光标位置到行尾的所有内容。Ctrl+L:清屏(清除终端上的内容,不是行内跳转)。使用Ctrl键加上左......
  • Windows访问Linux下的FTP服务器(Centos和Uuntu)
    centos7.9版本1.下载FTP离线安装包:http://rpmfind.net/linux/rpm2html/search.php?query=vsftpd(x86-64)   选择最后一个 vsftpd-3.0.2-28.el7.x86_64.rpm2.检查是否已经安装了vsftprpm-qa|grepvsftpd出现提示vsftpd版本号则表示......
  • Linux系统上安装.tar.gz格式的Python源码包
    要在Linux系统上安装.tar.gz格式的Python包,您可以按照以下步骤进行操作:解压文件:使用以下命令将.tar.gz文件解压缩:tar-zxvfpackage.tar.gz这将在当前目录下创建一个包含源代码的新文件夹。进入源代码目录:使用cd命令进入解压后的源代码目录:cdpackage检查依赖库:执行以下命令检查......