awk 相关问题

AWK是一种解释性编程语言,专为文本处理而设计,通常用作数据提取和报告工具。 AWK主要用于Unix系统。

awk 打印具有匹配子字符串的所有列

我想打印部分匹配字符串(疫霉菌)的列。该文件以逗号分隔,我更喜欢使用 awk,但欢迎使用所有选项:) 这是我的文件的前十行: 头文件

回答 1 投票 0

如何在 Linux 中将多行 grep 输出合并到单行

我通过执行 cat interim_detailed_cert | 收集了以下输出grep -E“标签:|dNSName:”。 输出 标签: cert1 dns名称:dns1.1 dns名称:dns1.2 标签: 证书2 ...

回答 1 投票 0

如何交换配置文件中的配置实体?

如果这个问题之前被问过,我深表歉意,在这个问题上确实停留了几个小时,这看起来相对容易。我在单个文件中通过 awk 识别出了两种模式。 awk '/\[代码\.ch...

回答 1 投票 0

如何在linux中删除上面2行,下面1行以及删除匹配的模式行

我想删除上面 2 行、下面 1 行,并从 Linux 的日志文件中删除匹配的模式行。 下面是文件, 猫文件 这是第一个 这是第二个 这是第三个 那个...

回答 1 投票 0

AWK排序函数:l和r参数,它们到底是什么意思?

在AWK中,为了对数组进行排序,我可以定义自己的排序函数,既可以在for循环中控制数组的遍历,也可以调用asort或asorti。比较函数的签名

awk
回答 1 投票 0

使用正则表达式提取子字符串

我想从 < to the next from my log-files. $>cat messages.log 中提取 2013-03-24 19:32:37.231 ,消息:[测试1] 2013-03-24 19:32:37.547 我想从我的日志文件中提取从<到下一个。 $>cat messages.log 2013-03-24 19:32:37.231 <F280 [192.168.178.22]:5000 -- Unknown>, Msg:[Test1] 2013-03-24 19:32:37.547 <F281 [192.168.178.22]:5000 -- Unknown>, Msg:[Test2 Test3 Test4] 2013-03-24 19:32:38.833 <F280 [192.168.178.22]:5000 -- Unknown>, Msg:[Test5] 2013-03-24 19:32:42.222 <F281 [192.168.178.22]:5000 -- Unknown>, Msg:[Test6] $>sed 's/.*\<\(.*\) \[.*/\1|/g' messages.log F280| F281| Test3 Test4] F280| F281| 除了带有换行符的输出之外,我几乎得到了我想要的东西。所以我希望得到以下结果: F280|F281|F280|F281 正则表达式是什么样的? 我不会创建一个不可读的正则表达式来执行此操作,我会在这里使用awk: $ awk -F'[< ]' '/^[0-9]+/{s?s=s"|"$4:s=s$4}END{print s}' file F280|F281|F280|F281 为了使脚本更具可读性: /^[0-9]+/ { s ? s = s "|" $4 : s = s $4 } END {print s} 试试这个: sed -n'/ 尝试类似的方法(您将有嵌套组),或者在正则表达式中打开多行选项: (^.+<(\w+) .+$)+ 是否必须只使用 grep 还是还有其他命令可用? 我想说的是 grep "<.* " messages.log | sed 's/.*\<\(.*\) \[.*/\1|/g' | tr -d '\n' | sed 's/.$//' 第一个 grep 是删除不符合您所需模式的数据,然后是 sed 命令。 在输出中,谁应该看起来像 F280| F281| F280| F281| 最后一个 tr 命令只是删除每行末尾的换行符(即它连接结果),而最后一个 sed 只是删除最后的管道分隔符

回答 4 投票 0

awk 应该在命令行分配的变量中扩展转义序列吗?

我最近发现 Awk 的 -v VAR=VAL 语法用于在命令行上初始化变量,它扩展了 VAL 中的转义序列。我之前认为这是传递字符串 int 的好方法...

回答 1 投票 0

匹配模式后打印特定行数

我必须在输入文件中每次出现表达式“AAA”后打印 81 行。我该怎么办?

回答 6 投票 0

在电子邮件中的重复项之前添加序号

我目前正在学习 awk 并尝试标准化 csv 文件。结果 - 发送一个 scv 文件进行处理并接收一个新的 scv。 我需要让所有重复的电子邮件在 @ 之前得到一个数字。 所以...

回答 2 投票 0

如何查找一行中具有特定字符的行并将其替换为一行?

我有一个大补丁(87546行),在这个补丁中我想删除包含加号的行并只留下一行。 例如: +$as_echo "$CC_FOR_BUILD" >&6; } + + + + +案例...

回答 1 投票 0

awk 三元运算中的布尔逻辑

我有一堆 3 列 13 行的数字 7,4 15,9 77,5 54,4 28,1 18,8 46,2 28,1 26,7 38,5 30,3 32,4 40,1 31,9 29 32,6 36 32,7 41,4 33 27 65,5 24,9 11,8 44 30 28,1 42,1 ...

回答 1 投票 0

如何获取当月第三个星期三的日期

我需要一个代码示例来获取该月第三个星期三的日期。 我根本不知道如何做到这一点 - 上周三很简单: 卡尔 | awk '/^ *[0-9]/ { d=$4 } END { 打印...

回答 6 投票 0

退出到snakemake时awk返回成功代码

我正在使用awk脚本来处理文本文件,当遇到某个字符串时,它会退出。 { 如果($1 ~ /^>/){ if (($1 ~ /.{5}.+/) || ($1 ~ /^>MT/)) { 出口 }...

回答 1 投票 0

如何使用 PHP 中的正则表达式从 SQL 中的表名中提取最后一项? [已关闭]

问题: 我有一个 SQL 查询,格式如下: 从 a.b.c 中选择 dt,其中 dt = '20210808' LIMIT 10; 这个SQL语句中的表名是a.b.c,我只想提取最后一部分...

回答 1 投票 0

根据过滤器打印awk中列的子字符串

我有一个字符串,如下所示,以逗号分隔 2019-08-3123:10:38,abcd:343:334334,v1-客户,{Ad=299:ADT=1}:{ADpif=10:DDI=299},abd-fed,568:3433 我需要拥有所有字符串,但只需要 substri...

回答 4 投票 0

根据awk中的位置过滤器打印列的子字符串

我有一个包含以下 3 列的文件 1 a1 abcd 1 2 B1 ACDB 3C1ABCD 我需要根据位置过滤器上的第 3 列的子字符串提取/打印行(2==“b”),因此输出应该...

回答 1 投票 0

使用 grep 从文件中匹配 python 多行表达式字符串?

请注意,这不是一个Python问题。我有多个目录(大约 500 个目录,称为模块),每个目录都包含一个 __manifest__.py 文件。该文件被视为元数据...

回答 2 投票 0

Grep 查找字符串并读取内容直到下一个匹配字符串

我正在尝试读取文件并使用 grep 搜索字符串。 一旦找到该字符串,我想读取该字符串之后的所有内容,直到匹配另一个字符串。所以在我的例子中,我正在寻找...

回答 2 投票 0

从给定的匹配中删除多行直到空行

在unix系统上,我有一个文件,我需要删除所有与Package:匹配的行,直到找到空行。这是一个例子,我需要删除 terminfo 信息...

回答 3 投票 0

在`find ... -exec bash -c`中使用awk

我的目录结构如下所示: 。 |-五 |-四 |-一 |-七 |-六 |-三 |-二 每个子目录中都有文件,这些文件是...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.