grep something space something()

时间:2012-09-24 13:16:57

标签: unix grep

我想提前为我的noob问题道歉,但我想grep c文件的功能标题。所以我试图将换行符“^”然后写入一些空格“”然后是一些字符“。”然后是一些空格“”然后再重复一些字符“。“然后又有一些空格”“then”(“然后是一些字符”。“then”)“。

我试过grep -E /^( *.*)\2 *\(.*\)/ *.c

grep -E /^ *.* *.* *\(.* *.*\*\)/ *.c
                int foo (int bar, double cow)

但我认为不支持(和)。我想回来的更多。我怎样才能像上面那样的功能标题进行grep。再一次,我对上面这个grep的问题是我回到很多结果,然后我找回了没有()的东西。我只想要功能标题。感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

试试这个:egrep '^[ \t]*[^ \t]*[ \t]*[^ \t]*[ \t]*[(][^ \t]*[)]' *.c

BTW:我不鼓励使用空格的快捷方式,因为它是特定于实现的。

答案 1 :(得分:0)

这是否符合您的要求?

grep -P "^\s*[\w ]+\([^\)]*\)"