【发布时间】:2022-01-04 15:20:39
【问题描述】:
我有一个试图通过 awk 过滤的文件数据,我可以过滤数据,但希望 awk 语句更简单为一行:
文件内容:
Entity Name
Value
Unknown dbs636294051.klm.bet.com: /opt
N/A
Unknown dbs636294051.klm.bet.com: /tmp
N/A
Unknown dbs636294051.klm.bet.com: /var
N/A
我的试用:
awk '!/^N/{ if($2 ~ /klm/) print $2}' file | awk -F":" '{print $1}'
上述方法有效,但我正在寻找是否可以将其修剪到之前的管道:
dbs636294051.klm.bet.com
dbs636294051.klm.bet.com
dbs636294051.klm.bet.com
【问题讨论】:
-
Unknown在您的输入中代表什么?是字面意义上的Unknown这个词还是任何你不知道它可能是什么的随机文本或其他什么? -
@EdMorton,
Unknown是所有关键缺失值的起始行,在这里可以将其视为主要前导字符串。换句话说,它在以Unknown开头的文件中的主要字符串。