首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将两列与文件中的一组数字进行比较,并使用unix打印每一行的匹配数字

你可以使用awk命令在Unix系统中完成这个任务

代码语言:javascript
复制
awk '{for(i=1;i<=NF;i++) if($i == num) print $i}' file.txt

解释:

  • awk:Unix命令行工具,用于处理文本文件。
  • {for(i=1;i<=NF;i++) if($i == num) print $i}awk命令的主体部分。这里使用了一个for循环来遍历文件中的每一列。NF表示列数,$i表示当前列的值。如果当前列的值与给定的数字相等,则打印该值。
  • file.txt:需要处理的文件名。

例如,如果你有一个名为file.txt的文件,内容如下:

代码语言:javascript
复制
1 2 3
4 5 6
7 8 9

并且你想找出与数字5匹配的列,你可以使用以下命令:

代码语言:javascript
复制
awk '{for(i=1;i<=NF;i++) if($i == 5) print $i}' file.txt

输出将会是:

代码语言:javascript
复制
5

如果你想同时比较两列,例如,找出与数字28匹配的列,你可以使用以下命令:

代码语言:javascript
复制
awk '{for(i=1;i<=NF;i++) if($i == 2 || $i == 8) print $i}' file.txt

输出将会是:

代码语言:javascript
复制
2
8

请注意,你需要根据实际情况替换file.txt和要比较的数字。

相关搜索:比较两个文件中的数字,并使用perl编程获得匹配的数字BASH将变量中的值(文件大小)与数字进行比较将列与数据帧中的列进行比较,并计算python中的匹配频率如何使用python将行中间的每一行与单个文本文件中的每一行进行比较?在python中使用OR将一个数字与多个数字中的一个数字进行比较awk比较三个文件中的列,并打印与NA前缀不匹配的列及其内容如何将行值与不同列中的所有行进行比较,并使用Pandas分隔匹配的所有行将行中的多个值与另一行进行比较并输出不匹配的值- Excel VBA使用awk将1列与两个文件中的另一列进行匹配,然后对匹配的记录执行日期减法如何使awk根据文件2中的某个数字范围将文件1中的行与文件2中的行进行匹配如何使用pandas比较基于2列的两个不同的csv文件,并打印第二个csv文件中不匹配的行将数据帧的一行与相应的行进行比较,并将数据存储在两个单独的列中将一个数据框的每一列与另一数据框列进行比较,并将产生的每个重叠打印到单独的文件中在python中,将一行的一部分与另一个文件中的每一行进行比较。如何将两个带数字的文件合并到一个新文件中并对其进行排序?将A列数据帧A中的值与数据帧B中的云B进行匹配,并使用pandas从数据帧A中创建无匹配列表如何将一个数据帧中的列中的数字与另一个数据帧R中的粗粒度值的列进行匹配两个CSV文件,在由相同类型的值组成的单个列中,将第2个CSV文件中具有匹配值的一行中的一对进行匹配根据第二个.csv文件中的列查询一个.csv文件中的列。将查询到的列打印到新文件,并在匹配的位置使用文件2行进行注释如何将df2的两个不同数据帧与特定列(列w)进行比较,并从df2更新df1中的匹配行列AD
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Unix & Linux 大学教程 学习总结

    Unix & Linux 大学教程    Harley Hahn 0,操作系统最重要功能 控制计算机并在计算机启动或者重新启动时初始化计算机 支持计算机交互所使用界面 为需要使用计算机资源(磁盘空间...简单地讲,文件存放数据或者允许访问资源,而进程是正在执行程序。 进程可以分成更小单元,称为线程,线程是一组运行在进程环境指令。...(4)选择选项 28,文件简单操作 split 分割文件 tac 反转文本行顺序 rev 反转字符 colrm 删除指定数据,然后剩余数据写入标准输出 29,比较和抽取 cmp 逐字节地比较文件...comm 一行一行比较个有序文本 diff    比较无序文本文件 cut -f 1,3-5 -d ':' /etc/passwd | sort (f,d分隔符) cut -c1-8(c按字符)...9][0-9]包含个连续数字行 -e 多条更改 -f 文件 33,正则表达式 元字符 . ^ $ \<    匹配单词开头 \>    匹配单词结尾 [abc]    匹配abc任何字符

    2.3K10

    Shell四剑客实操案例

    #查询不包括x和y行号行;r #从另一个文件文件;w #文本写入到一个文件;y #变换字符;q #第一个模式匹配完成后退出;l #显示八进制ASCII码等价控制字符; 常用SED工具企业演练案...打印jfedu.txt文本一行最后一行: sed -n ‘1p;$p’ jfedu.txt 删除jfedu.txt第一行至第三行、删除匹配行至最后一行: sed ‘1,3d’ jfedu.txtsed...也即每行占永行空间,一行后边插入空行: sed ‘/^$/d;G’ jfedu.txt 在jfedu.txt每行前加入顺序数字序号、加上制表符\t及.符号: sed = jfedu.txt| sed...AWK基本原理是逐行处理文件数据,查找命令行中所给定内容相匹配模式,如果发现匹配内容,则进行下一个编程步骤,如果找不到匹配内容,则 继续处理下一行。...grep或fast grep简写,它们把所有的字母都看作单词,正则表达式元字符表示其自身字面意义,不再有其他特殊含义,一般使用比较少。

    2.1K21

    再见了!linux、awk。。

    可以是任何合法Awk命令。 input_file:待处理输入文件。 2. 工作原理 对于输入文件一行,Awk逐行读取数据,匹配模式。当模式匹配时,Awk执行相应动作。...示例 假设我们有一个名为file.txt文本文件,内容如下: apple,3 orange,2 banana,5 我们想要使用Awk命令提取第一(水果名称),打印输出。...下面是种执行 AWK 脚本方法: 方法 1: 使用命令行直接执行 在这种方法,你直接 AWK 代码作为命令行一部分。...案例 假设我们有一个包含学生信息文件一行包括学生姓名、分数和班级,用逗号分隔。 我们想要读取文件打印出每个学生姓名和分数。...第二个代码块使用[0-9]匹配包含数字行,打印匹配行。 最后一个代码块使用NF !~ /a/排除以a结尾单词,打印匹配行。

    21910

    Linux 【命令】

    # 多条命令使用分号分隔 END # 结尾代码块,在对一行进行处理之后再执行代码块,主要是进行最终计算或输出结尾摘要信息 技术要点: //   # 匹配代码块,可以是字符串或正则表达式...+/   # 个或个以上数字 /[0-9][0-9]*/   # 一个或一个以上数字 -F'[:#/]'   # 定义三个分隔符 FNR     # NR类似,不过多文件记录不递增,每个文件都从1...开始 \t   # 制表符 \n   # 换行符 FS   # BEGIN时定义分隔符 RS   # 输入记录分隔符, 默认为换行符(即文本是按一行一行输入) ~    # 匹配==相比不是精确比较...=   # 不等于,精确比较 &&   # 逻辑 ||   # 逻辑或 +    # 匹配时表示1个或1个以上 print & $0: print 是awk打印指定内容主要命令 awk '{print...w|awk 'NR==1{print $6}' # 打印一行,第六数据 cat /etc/passwd|awk -F":" '{print $1}' # -F指定以":"分隔,打印第一数据

    19.4K21

    性能工具之linux三剑客awk、grep、sed详解

    文件一行开始,grep 一行复制到 buffer ,将其搜索字符串进行比较,如果比较通过,则将该行打印到屏幕上。grep重复这个过程,直到文件搜索所有行。...tuff robots 一个简单例子 grep 最简单例子是: grep "boo" sampler.log 在本例,grep 遍历文件 “sampler.log” 一行打印出其中一行...换句话说,grep 打印所有搜索字符串不匹配行,而不是打印匹配行。...grep -c "boo" sampler.log 4 l 选项只打印查询具有搜索匹配文件文件名字符串。 如果你想在多个文件搜索相同字符串,这将非常有用。...AWK非常复杂,所以这不是一个完整指南,但应该给你一个知道什么 awk 可以做。它使用起来比较简单,强烈建议使用。 AWK 基础知识 awk 程序对输入文件一行进行操作。

    4.1K31

    如何用 awk 删除文件重复行【Programming】

    摘要 要删除重复行,同时保留它们在文件顺序,请使用: awk '!...对于文件一行,如果行出现次数为零,则将其增加一打印该行,否则,它仅增加出现次数而无需打印该行。 我对awk并不熟悉,所以我想了解它是如何通过这么短脚本来实现这一点。...visited[$0]++ { print $0 }' your_file > deduplicated_file 对于文件一行,如果表达式成功,则将该行打印到输出。...sort -u your_file > sorted_deduplicated_file 使用cat,sort和cut 前面的方法生成一个去重复文件,其行将根据内容进行排序。...abc ghi def xyz klm 参考资料 Gnu awk 用户指南 awk 数组 Awk真值 Awk 表达式 如何在Unix删除文件重复行? 删除重复行而不排序 awk '!

    8.7K00

    Linux通配符和正则表达式通配符 区别_linux正则表达式语法

    list]或[^list] 匹配 除list 任意单一字符 a[!0-9]b ab之间必须也只能有一个字符, 但不能是阿拉伯数字, 如axb, aab, a-b。...例如,如果想使用字符,你需要将它写为\ 在方括号还可以使用一些有用特殊匹配模式,如下: 匹配模式 含义 [:alnum:] 字母数字字符,如grep[[:alnum:]] words.txt [:...–d或—directories= 当指定要查找是目录而非文件时,必须使用这项参数,否则grep指令将回报信息停止动作。...–f或—file= 指定范本文件,其内容含有一个或多个范本样式,让grep查找符合范本条件文件内容,格式为一个范本样式。...如果只想确定哪些文件含有Main,而不需打印相应行内容,那么可以使用以下命令:?

    5.1K20

    sed & awk 第二版学习(四)—— 基本 sed 命令

    g:对模式空间所有匹配进行全局替换。没有 g 时只替换第一个匹配。 p:打印模式空间内容。 w file:模式空间内容写到文件 file 。...flag 可以组合使用,例如 gp 表示进行全局替换打印一行。...因为反斜杠也是替换字符串元字符,所以需要用个反斜杠输出一个反斜杠。替换字符串“&”表示“UNIX”。& 允许指定一个可变替换字符串,该字符串是实际内容匹配字符串。下面是个应用场景。...列表 列表命令(l)用于显示模式空间内容,打印字符显示为数字 ASCII 代码。可以使用该命令检测输入“不可见”字符。...使用退出命令从文件打印前 100 行: sed '100q' test 它打印一行,直到到达行 100 并且退出。在这点上,该命令功能与 UNIX head 命令类似。

    7310

    Linux系统开发: 学习linux三剑客(awk、sed、grep)(上)

    -f 指定范本文件,其内容有一个或多个范本样式,让grep查找符合范本条件文件内容,格式为范本样式。 -F 范本样式视为固定字符串列表。...-G 范本样式视为普通表示法来使用。 -h 在显示符合范本样式那一之前,不标示该所属文件名称。 -H 在显示符合范本样式那一之前,标示该文件名称。 -i 忽略字符大小写差别。...-C 2 #显示查找内容及其前后行内容 查找阿拉伯数字 需要用到正则表达式[m]{n},选项参数-E(指定使用正则表达式) []正则表达式:[m]表明查找匹配m字符内容。....txt #或者直接使用-E参数指定使用正则表达式,则可不加转义 $ grep "[1-3][1-3]" 123.txt #上面相同效果,也表示在123.txt查找1-3之间数字出现内容...前面可加数字,指定打印第几行 P(大写) 打印模板块一行。 q 退出Sed。 b lable 分支到脚本带有标记地方,如果分支不存在则分支到脚本末尾。 r file 从file读行。

    9.3K21

    Linux好用管道命令

    实例 1)在当前目录,查找后缀有 file 字样文件包含 test 字符串文件打印出该字符串行。...例如,查找指定目录/etc/acpi 及其子目录(如果存在子目录的话)下所有文件包含字符串"update"文件打印出该字符串所在行内容,使用命令为: grep -r update /etc/...排序命令 sort sort命令进行排序,而且可以根据不同数据形式来排序「文字和数字排序不一样」;其排序字符语系编码有关,建议在排序时,使用LANG=C来让语系统一 用法 sort [-fbMnrtuk...❝sed 查找替换 vi 命令类似,语法格式如下: ❞ sed 's/要被取代字串/新字串/g' testfile 文件每行第一次出现 oo 用字符串 kk 替换,然后将该文件内容输出到标准输出...- 利用sed regular_express.txt 内一行结尾若为 .

    9.3K20

    awk-grep-sed简单使用总结(正则表达式应用)

    m)后,整个正则表达式换行符视为一个字符串分隔符,这样就可以把一行//打印 使用子表达式: 子表达式必须用()括起来.注意()也是元字符,因此需要匹配本身时候也需要进行转义。...df | tee -a file 使用tee好处就是当你在执行任何命令时候,都可以显示结果打印定向到一个普通文件取。...文件名 同时可以awk写在文本使用awk -f调用 awk脚本: 如果设置了-F选项,则awk每次读一条记录或一行使用指定分隔符指定域。...$0}' grade    打印个成绩集() awk内置变量: NF:支持记录域个数,在记录被读之后设置 NR:显示行数 FILENAME:显示支持awk脚本实际操作输入文件名 RS:记录分隔符...$0,t}' grade   这样将在最后打印累加,最后再打印一次最终值  awk内置函数:  gsub(r,s)    在整个$0用s代替r    类似于sed查找和替换  index

    2.3K90

    linux实战(一)

    地址形式可以是数字、正则表达式、或二者结合。如果没有指定地址,sed处理输入文件所有行。  地址是一个数字,则表示行号;是“$"符号,则表示最后一行。...下一个n命令 $ sed '/test/{ n; s/aa/bb/; }' example 如果test被匹配,则移动到匹配一行,替换这一行aa,变为bb,打印该行,然后继续。...保持和获取h命令和G命令 $ sed -e '/test/h' -e '$G example 在sed处理文件时候,一行都被保存在一个叫模式空间临时缓冲区,除非行被删除或者输出被取消,否则所有被处理行都将打印在屏幕上...awk 作用  awk 比较倾向于一行当中分成数个『栏位』(或者称为一个域,也就是一)来处理。...input-file(s) 是待处理文件。 在awk文件一行,由域分隔符分开每一项称为一个域。通常,在不指名-F域分隔符情况下,默认域分隔符是空格。

    2.2K10

    Vim给文件加行号,这通惊为天人操作没sei了!文末天书慎点

    此外,还提供了打印行号选项(Vim 可以打印带有数字行,并且不需要文件数字)。 ?...模式 ^ 匹配一行开头,\= 表达式使用 printf() 来格式化当前行数字: %-4d 是一个左对齐整数, 如果需要,可以通过在4宽度添加空格来填充, %4d 是右对齐,%04d....") - line("'<") + 1) 上面的示例格式字符串是“%d”。它插入一个左对齐数字,后跟一个句点,和一个制表符TAB。选定范围内一行进行了编号。...nl -ba 在使用 nl 实用程序时,默认情况下最多会添加 6 个前导空格,数字行内容之间用一个制表符分隔。前导空格减少到 2 (最多可达 99 个),并将分隔符替换为“.”...,你可以使用以下标识符: :'!nl -s '. ' -w 2 带行号打印 如果只需要在打印输出对行进行编号,则不需要插入行号。

    2.5K20

    Shell实用工具

    sed程序命令;如果不写匹配模式,那么一行都会执行sex程序命令 选项参数说明 选项参数 功能 -e 直接在指令模式上进行sed动作编辑。...p print打印, 打印匹配内容,通常-n选项和用 s substitute替换, 替换掉匹配内容 = 用来打印匹配行号 n 读取下一行,遇到n时会自动跳入下一行 特殊符号 命令...,切开部分再进行各种分析处理,因为切开部分使用awk可以定义变量、运算符, 使用流程控制语句进行深度加工分析。...示例: 打印匹配第7数据 搜索passwd文件有root关键字所有行, 然后以":"拆分打印输出第7 awk -F: '/root/{print $7}' passwd # -F: 以':'...示例: 操作指定数字运算 passwd文件用户id增加数值1输出 echo "2.1" | awk -v i=1 '{print $0+i}' ?

    7.8K10

    Linux正则匹配详解

    相比下面种贪婪量词对资源消耗是最大. 懒惰(勉强),如 “?” 懒惰量词使用另一种方式匹配,它从目标的起始位置开始尝试匹配,每次检查一个字符,寻找它要匹配内容,如此循环直到字符结尾处....grep常用用法 grep [-acinv] [--color=auto] '搜寻字符串' filename 选项参数: -a : binary 文件以 text 文件方式搜寻数据 -c :计算找到...,也可以读取来自前一命令标准输入,它分别扫描输入数据一行,查找当前扫描行pattern是否匹配。...~/reg/ 第一个字段不匹配 NR >=2 从第二行开始处理 awk 整则可以和比较运算符结合使用,以便处理更复查匹配 awk技巧 awk使用RE为ERE 如果在BEGIN设置了OFS,只有$0...以防shell对他们进行解释,如awk -F '[:/t]',使用空格,冒号,tab作为分隔符 next语句: 从输入文件取得下一个输入行,在awk命令表顶部重新执行命令,一般用于跳过一些特殊行 awk

    11.7K20

    Linux常用shell语法和命令

    commandN done 列表 是一组值(数字,字符串等)组成序列,每个值通过空格分隔。循环一次,就将列表下一个赋给变量。...grep 基本命令 grep在一个或多个文件查找模式字符串(pattern)匹配行,并将搜索结果打印出来,不会修改原文件内容。...-k: 实例 sort文件/文本一行作为一个单位,相互比较比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。...awk输出之后,将从文件获取另一行,并将其存储到$0,覆盖原来内容,然后字符串分隔成字段并进行处理。这个过程持续到整个文件所有行都处理完毕。...-ddd   匹配信息包代码以十进制形式给出;    -e    在输出行打印出数据链路层头部信息;    -f    外部Internet地址以数字形式打印出来;    -l    使标准输出变为缓冲行形式

    4.3K20

    生信人自我修养:Linux 命令速查手册(全文引用)

    file内容显示成一行 cat file | xargs -n3 # file内容3一行进行输出 find /ifs/result -name '*.fq.gz' | xargs -n1 -...:空格,制表符 sed 's/AA/BB/' file # 文件AA替换成BB,只替换一行第一次出现AA,替换后结果输出到屏幕 sed 's/AA/BB/g' file # 文件所有...' file1 # 匹配行写入file2 awk Awk 是一个强大文本分析工具,它每次读入一条记录,并把每条记录切分成字段后进行分析。...表达式操作符 Awk 表达式符号 C 语言类似,基本表达式有数字,字符串,变量,字段,数组以及函数调用。变量无需声明,它们在首次使用时被初始化为null。...正则表达式用个反斜杠/包围。 expr ~ /r/ # 评估expr是否r匹配匹配意思是expr一个子串是否在正则表达式r定义字符串集中。

    3.9K40

    Awk学习笔记

    awk处理文本和数据方式是这样,它逐行扫描文件,从第一行到最后一行,寻找匹配特定模式行,并在这些行上进行你想要操作。...关系表达式:可以用下面运算符表关系运算符进行操作,可以是字符串或数字比较,如$2>%1选择第二个字段比第一个字段长行。 模式匹配表达式:用运算符~(匹配)和~!(不匹配)。...如$ awk '{print $0}' test输出test文件所有记录。 变量NR:一个计数器,处理完一条记录,NR值就增加1。...awk可跟踪域个数,并在内建变量NF中保存该值。如$ awk '{print $1,$3}' test打印test文件第一和第三个以空格分开(域)。 6.3. ...如$ awk '$1 ~/^root/' test显示test文件第一以root开头行。 10. 比较表达式 conditional expression1 ?

    2.4K30
    领券