获取以数字开头的行
Get lines that start with number
我有一个bash命令diff file1 file2
,相应的输出是这样的:
74,100c74,100
< some text
这只是一小部分,当然,diff
输出中的行首变化很大(我知道 >, <, -, \
和从 1
到 [=16= 的字符],但可能还有其他人,我不太确定)。我只想要以1
到9
的数字开头的输出行(不是0
,因为我只关心发生变化的位置,行号不会开始0
).
因此,如果我用该命令管道 diff
,输出应该是:
74,100c74,100
我怎样才能做到这一点?谢谢...
能否请您尝试以下。根据 OP 的描述编写。
your_command | awk '/^[1-9]/'
您也可以使用 grep
,例如:
your_commamd | grep "^[1-9]"
解释:
在 awk
中,如果我们必须使用正则表达式来匹配当前行,我们在 /
中使用该正则表达式,这就是为什么给出 ^[1-9]
意味着查看行是否从任何东西开始1 到 9 并且如果正则表达式与当前行匹配,因为它是默认的当前行打印操作。
我有一个bash命令diff file1 file2
,相应的输出是这样的:
74,100c74,100
< some text
这只是一小部分,当然,diff
输出中的行首变化很大(我知道 >, <, -, \
和从 1
到 [=16= 的字符],但可能还有其他人,我不太确定)。我只想要以1
到9
的数字开头的输出行(不是0
,因为我只关心发生变化的位置,行号不会开始0
).
因此,如果我用该命令管道 diff
,输出应该是:
74,100c74,100
我怎样才能做到这一点?谢谢...
能否请您尝试以下。根据 OP 的描述编写。
your_command | awk '/^[1-9]/'
您也可以使用 grep
,例如:
your_commamd | grep "^[1-9]"
解释:
在 awk
中,如果我们必须使用正则表达式来匹配当前行,我们在 /
中使用该正则表达式,这就是为什么给出 ^[1-9]
意味着查看行是否从任何东西开始1 到 9 并且如果正则表达式与当前行匹配,因为它是默认的当前行打印操作。