grep 查找分隔符中模式之后的内容(序列号)

grep 查找分隔符中模式之后的内容(序列号)

说我有一个文件

#cat serial
SerialNumber                 : G5DBSTLAJ104949

我只想知道打印 $3 中的“SerialNumber”之后出现哪些单词,

我更希望该命令的输出如下所示:

G5DBSTLAJ104949

使用 bash,我想打印出 $3 刚刚得到“SerialNumber”之后的单词。有没有办法做到这一点?

答案1

您可以使用awk

awk '/SerialNumber *:/{print$3}' serial

当一行包含“SerialNumber”时,它仅打印第三列。

答案2

使用GNU grepPCRE模式:

grep -oP '^SerialNumber\s+:\s*\K\S+' file
G5DBSTLAJ104949

相关内容