使用命令行工具匹配一部分行的好方法是什么?

时间:2010-06-07 21:43:03

标签: regex command-line

我想在句子中匹配一行的一部分: “超级id = 42或者什么。”

我想要返回42号。

echo“超级id = 42或者什么”| grep -o'id = [0-9] +'| sed's / id = //'

会返回正确的答案,但有没有更优雅的解决方法,例如只使用一个工具?

2 个答案:

答案 0 :(得分:0)

对于快速简单的事情,这非常好。您可以使用perl在一个命令/语句中完成所有操作,但grep + sed就可以正常工作。

这是更大的工具链/应用程序的一部分还是仅仅是为了满足您自己的临时需求?

答案 1 :(得分:0)

- 或者,a-perl版本将是

echo "The super id=42 or something" | perl -ne '/id=(\d+)/ and print "$1\n"'