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

如何获取每个作业的最后匹配行( awk )

awk是一种文本处理工具,常用于从文件或输入流中提取和操作数据。它以行为单位读取输入,并可以对每一行应用特定的模式和操作。要获取每个作业的最后匹配行,可以使用以下命令:

代码语言:txt
复制
awk '/pattern/{lastMatchedLine=$0} END{print lastMatchedLine}' filename

这个命令的作用是在filename文件中搜索特定的pattern,并将最后匹配到的行保存在变量lastMatchedLine中。最后,在处理完所有行之后,使用END语句打印最后匹配到的行。

示例: 假设我们有一个名为jobs.txt的文件,内容如下:

代码语言:txt
复制
Job 1 started
Job 2 started
Job 1 completed
Job 3 started
Job 2 completed
Job 4 started
Job 3 completed
Job 4 completed

我们想获取每个作业的最后一行,其中作业以"Job"开头。可以使用以下命令:

代码语言:txt
复制
awk '/^Job/{lastLine=$0} END{print lastLine}' jobs.txt

输出结果将是:

代码语言:txt
复制
Job 4 completed

这是因为它是最后一个作业的最后一行。

对于腾讯云相关产品和产品介绍链接地址,由于禁止提及特定品牌商,无法给出具体的推荐产品和链接。但腾讯云提供了多个与云计算相关的产品,例如云服务器、云数据库、云存储等,您可以在腾讯云官方网站上找到更多信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用awk和sed获取文件奇偶数方法总结

原来:FNR,是每个文件中,换了一个文件,会归零;而NR则每个文件会累加起来 7) 使用简单样式来输出 下面表示"行号占用5位,不足补空格" [root@localhost ~]# awk '{...,最大数,以及其所在 用max存储最大数,maxline存储最大数所在,并在最后输出 # awk '$1 > max { max=$1; maxline=$0 }; END { print...# awk '{ print $NF }' test.file #NF表示当前行字段数,例如为3,则$NF,就是$3,也就是第三个字段了 18) 显示最后最后一个字段 每行处理没有输出...,尽在最后输出,field作为每行最后暂存变量 # awk '{ field = $NF }; END { print field }' test.file 19) 显示字段数小于4 #...awk 'NF < 4' test.file 20) 显示每行最后一个字段小于4 # awk '$NF < 4' test.file shell脚本,实现奇数等于偶数

1.3K40

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

了解如何在不排序或更改其顺序情况下使用awk'!visited $ 0 ++'。 [jb0vbus7u0.png] 假设您有一个文本文件,并且需要删除它所有重复。...对于文件每一,如果出现次数为零,则将其增加一并打印该行,否则,它仅增加出现次数而无需打印该行。 我对awk并不熟悉,所以我想了解它是如何通过这么短脚本来实现这一点。...visited [ $0]访问存储在映射中值,其键值等于$0(正在处理),也称为匹配项(我们将会在下面设置)。 取非(!)值:在awk中,任何非零数字值或任何非空字符串值均为true 。...abc ghi def xyz klm 参考资料 Gnu awk 用户指南 awk数组 Awk真值 Awk 表达式 如何在Unix中删除文件中重复? 删除重复而不排序 awk '!...a[$0]++' 是如何工作最后是可爱猫咪。 image.png

8.7K00
  • 防抖与节流 & 若每个请求必须发送,如何平滑地获取最后一个接口返回数据

    原理是通过判断是否到达一定时间来触发函数 区别: 函数节流不管事件触发有多频繁,都会保证在规定时间内一定会执行一次真正事件处理函数,而函数防抖只是在连续触发事件后才触发最后一次事件函数 上面的解释...handle() { console.log(Math.random()) } window.addEventListener('scroll', throttle(handle, 1000)) 每个请求必须发送问题...尤其是购买数量,这是一个数字选择器,如果用户频繁点击 + 号,就会连续调用多次查价接口,但==最后一次查价接口返回数据才是最后选择正确价格== 每个查价接口逐个请求完毕时候,==右边显示价格也会逐个改变...==,最终变成最后正确价格,一般来说,这是比较不友好,用户点了多次后,不想看到价格在变化,尽管最终是正确价格,但这个变化过程是不能接受 也不应该使用上面的防抖解决方式,不能设置过长定时器,因为查价接口不能等太久...,也不能设置过短定时器,否则会出现上面说问题(价格在变化) 所以这是一个==每个请求必须发送,但是只显示最后一个接口返回数据问题== 我这里采用入栈、取栈顶元素比对请求参数方法解决: // 查价

    3.3K50

    问与答88: 如何获取成绩排在最后5名学生姓名?

    学习Excel技术,关注微信公众号: excelperfect Q:我有一个学生成绩表,如何使用公式获取成绩排在最后5名学生姓名,如下图1所示。 ?...图1 A:可以对学生成绩从小到大进行排序,这样就可以看出排在最后学生是哪几位了。将活动单元格置于列B中,单击功能区“开始”选项卡“编辑”组中“排序和筛选——升序”,结果如下图2所示。 ?...;3;FALSE;5;FALSE;FALSE;FALSE;9;FALSE;11;12} 作为SMALL函数参数,求出ROW(A1)即第1个最小值所在: SMALL({FALSE;3;FALSE;5...;FALSE;FALSE;FALSE;9;FALSE;11;12},1) 即 3 当将公式向下拖时,ROW(A1)会变成ROW(A2)、ROW(A3)、…,从而求出第2小、第3小、…值所在。...再将结果代入INDEX函数获取对应姓名: INDEX(A1:A12,3) 得到: 桑梓儿

    2K31

    shell 学习笔记(17)

    如果并没有把当前命令作为作业来运行,如何才能得到它作业号呢? 答案就是用 CTRL-z(按住Ctrl键同时按住z键)了!...获取最后一个后台进程 PID 一样道理,都是针对当前 shell。...w 1 #按第一列去重 1660.export 格式化列出所有环境变量:export -p 1661.获取 ls -lrt 最后一列: ls -1 会将 ls -l 长格式最后一列打印出来...-n,防止不匹配时候全文输出 cut默认就是制表符 \t,就像 echo 不支持 \t 要 -e 才 或者 \t用 CTRL+V+TAB ;CTRL+V +I 代替 1689.获取管道里各个命令执行状态...0作地址都会报错. 5. addr1,+N 匹配addr1和它后边N 6. addr1,~N 匹配addr1和它后边,直到输入下一行号是N倍数 例如:seq

    1.1K80

    如何获取Hive正在执行或者已结束MapReduce作业SQL语句

    语句,如下: [xxa06ijg1r.jpeg] 本文主要介绍三种方式来获取Hive正在执行或者已结束MapReduce作业SQL语句,一种是通过MapReduce API获取执行作业xml配置文件...测试环境 1.操作系统RedHat7.3 2.CM和CDH版本为5.13.1 3.集群已启用Kerberos 2.通过YARN执行作业xml配置文件获取 ---- 1.使用fayson用户登录hue执行...SQL查询 [1qilvqo5cv.jpeg] 2.通过SQLApplicationID获取作业配置信息 curl -H "Accept: application/json" -X \ GET...接口获取Hive历史作业执行完整SQL语句,该信息对应到HDFS/user/history/done/2018/02/26/000000/job_1519613953021_0029_conf.xml...通过Cloudera ManagerAPI接口获取 ---- 1.在命令行执行如下命令获取作业详细信息 [root@ip-172-31-16-68 ~]# curl -u admin:admin "http

    6.3K50

    《Linux与unix Shell编程指南》 总结

    2)date日期格式可以是月份数或日期数,而且at命令还能够识别诸如today、tomorrow这样词。现在就让我们来看看如何提交作业。...*有效 # 删除每个段落最后 sed -n '/^$/{p;h;};/./{x;/./p;}' 特殊应用: -------- # 移除手册页(man page)中nroff标记。.../d;g;q' # 获取邮件地址。在上一个脚本所产生那一邮件头基础上进一步将非电邮 # 地址部分剃除。...*有效 # 删除每个段落最后 sed -n '/^/{p;h;};/./{x;/./p;}' 特殊应用: -------- # 移除手册页(man page)中nroff标记。.../d;g;q' # 获取邮件地址。在上一个脚本所产生那一邮件头基础上进一步将非电邮 # 地址部分剃除。

    5.5K30

    0812-5.16.2-如何获取CDSW上提交Spark作业真实用户

    异常描述 在一个CDSW环境中,由于其中一个租户经常提交大型Spark作业将YARN上租户所在资源池资源用到95%以上,从而影响到同一租户下其他用户提交作业运行。...这种情况下我们没办法直接找到这些大型作业实际提交人,是因为我们在为CDSW做多租户配置时候会将登录CDSW某一批用户统一绑定到同一个租户下(这样设计目的主要是为了简化YARN租户管理,而不用为每个用户创建资源池队列...),所以导致在YARN界面上看到都是同一个租户,而无法对应到实际CDSW用户以及这个人提交大型作业。...3.在SparkUI上找到该作业,并点击“Environment”,可以看到参数列表中打印了提交Spark作业用户 ?...2.针对CDSW上每个Project,在修改Spark配置重启CDSW之后首次Session时,会将实际提交人用户名这一参数自动写入 spark-defaults.conf文件中,但是在首次Session

    83640

    问与答113:如何定位到指定列并插入公式到最后

    引言:本文整理自vbaexpress.com论坛,供有兴趣朋友学习参考。 Q:我有多个工作表,每个工作表中都有一个Date列,但其位置都不相同,如下图1至图3所示。 ? 图1 ? 图2 ?...例如,对上图1所示工作表,拆分成如下图4所示。 ? 图4 如何定位到Date列,然后在其右侧插入4列,并使用公式在各列输入相应内容?...=RC[-3]&""/""&RC[-2]&""/""&RC[-1]" r.Offset(, 1).Resize(, 4).NumberFormat ="General" End Sub 分别使每个工作表成为当前工作表...代码使用Find方法在工作表中查找内容为“Date”单元格。 2. 在该单元格右侧插入4列。 3. 使用Array函数分别在每列开头输入相应内容。 4. 使用RC样式输入公式。 5....初学者注意体会Resize属性、Offset属性使用。

    1.8K30

    linux、awk。。

    可以是任何合法Awk命令。 input_file:待处理输入文件。 2. 工作原理 对于输入文件每一Awk将逐行读取数据,并匹配模式。当模式与匹配时,Awk执行相应动作。...# 如何执行 awk 程序 要执行 AWK 脚本,你可以将 AWK 代码保存在一个文本文件中,或者直接在命令行中运行它。...案例 假设我们有一个包含学生信息文件,每一包括学生姓名、分数和班级,用逗号分隔。 我们想要读取文件并打印出每个学生姓名和分数。...在主模块中,我们使用print命令来打印每个学生姓名和分数, 1表示第一个字段(姓名), 2表示第二个字段(分数)。 最后,我们指定了要处理文件file.txt。...第二个代码块使用[0-9]匹配包含数字,并打印匹配最后一个代码块使用NF !~ /a/排除以a结尾单词,并打印匹配

    21910

    2020-5-18-如何处理flex布局最后元素宽度问题

    每个item项有一个最小宽度,随着窗口拉伸,item宽度会增加,并且占满容器空间。 当窗口宽度增加到一定程度,会触发wrap布局,每一会多排列一个item。...18px; margin-top: 18px; flex: ; min-width: 300px; height: 94px; } image.png 但是问题来了对于最后...由于最后元素更少,所以在就会占用更多宽度,导致这些元素比其他列表元素更宽。...结果如下,我们看到即使最后没有填满也能成功布局,使每一项等宽。 image.png 我们看到这些额外列表项实际也参与了flex布局,只是没有高度,所以在感官上不会影响。...如何决定空列表项个数 由于最后列表最少个数1个,所以同其他差距为,单行铺满个数-1 。 因此我们只要让空列表项个数为,窗口最大宽度能铺满个数再-1就可以了。

    2.2K10

    Linux学习笔记-Day13

    #前后是符号也有可能被识别为单独单词。#前后为字母/数字会导致符号不被识别。-c:统计匹配成功数量。#仅显示行数而非匹配个数-v:反向选择,即输出没有匹配。...:第二到第四2,$:第二最后2~3:第二开始,每隔三取一,2、5、82,+4:第二到2+4/pattern/匹配上pattern!...)-n:禁止显示所有的输入内容,只显示经过sed处理查找:cat readme.txt | sed -n '/ee/p'使用示例(作业):md5sum -c $(cat file3 | sed '1d...}'例如:'{print $9:$10@$11}'#可自定义输出分隔符,若选择间输入“,”则默认为空格awk在读取一文本时,会用预定义字段分隔符划分每个数据字段,并分配给一个变量。...#$0代表整个文本行#$1代表文本行中第一个数据字段#$NF代表文本行中最后一个数据字段awk默认字段分隔符是任意空白字符awk内置变量FS:定义输入字段分隔符,Field Separator,同

    11010

    生信技巧 | GNU 并行操作

    数据并行情况 当文件每一都可以单独处理时 基因组每条染色体都可以单独处理 组件每个脚手架都可以单独处理 处理并行 压缩或解压缩 10 到 100 个文件 计算大文件中行数 将许多样本原始测序数据文件与基因组进行比对...不能并行情况 基因组组装并不是简单可并行化,因为第一步需要将每个读数与其他读数进行对齐,以便找到哪些读数相似并且应该连接(组装)。...获取读取子集会导致低质量组装结果。 GNU 并行 我们用来并行化生物信息学问题程序是 GNU 并行。它是“一种使用一个或多个计算节点并行执行作业 shell 工具”。...GNU 并行可帮助您运行原本要按顺序一项一项或循环运行作业。您可以查看 GNU Parallel 网站,以确定如何在集群上安装 Parallel 和/或了解如何使用它。...head us-counties.tab 让我们按县/州分开这些数据,而不是一个大文件 使用 sort 和 awk,我们可以首先按县/州对文件进行排序,然后使用 awk 将每一 ($0) 打印到名为

    26010

    Linux三剑客之grep,awk,sed命令必知必会

    “ $”正则表达式表示结尾,可用于匹配以特定字符串结尾。在本例中,我们注意匹配以“ 0”结尾。...如何在Linux中使用AWK命令 默认情况下,Awk命令用于打印文件内容。在本例中,没有指定模式,因此操作应用于文件每一。...NF - 输出每个记录()中包含字段数 linuxmi@linuxmi:~/www.linuxmi.com awk 'NR==3, NR==6 {print NR,0}' linuxmi.txt...sed 'd' linuxmi.txt 从第n开始删除到最后,例如,从第3最后: linuxmi@linuxmi:~/www.linuxmi.com sed '3,d' linuxmi.txt...要删除模式匹配文件: linuxmi@linuxmi:~/www.linuxmi.com$ sed '/pattern/d' linuxmi.txt 这就是我们有关如何在Linux中使用Grep,Awk

    9.2K20
    领券