获取以数字开头的行

Get lines that start with number

我有一个bash命令diff file1 file2,相应的输出是这样的:

74,100c74,100
<         some text

这只是一小部分,当然,diff 输出中的行首变化很大(我知道 >, <, -, \ 和从 1 到 [=16= 的字符],但可能还有其他人,我不太确定)。我只想要以19的数字开头的输出行(不是0,因为我只关心发生变化的位置,行号不会开始0).

因此,如果我用该命令管道 diff,输出应该是:

74,100c74,100

我怎样才能做到这一点?谢谢...

能否请您尝试以下。根据 OP 的描述编写。

your_command | awk '/^[1-9]/'

您也可以使用 grep,例如:

your_commamd | grep "^[1-9]"

解释:

awk 中,如果我们必须使用正则表达式来匹配当前行,我们在 / 中使用该正则表达式,这就是为什么给出 ^[1-9] 意味着查看行是否从任何东西开始1 到 9 并且如果正则表达式与当前行匹配,因为它是默认的当前行打印操作。