我正在使用grep来查找VB函数调用的所有出现。我这样命令 -
grep -n "FunctionX" FormX.frm
1814: FunctionX
2682: FunctionX
3020:' FunctionX
3292:Private Sub FunctionX()
3333:On Error GoTo FunctionX_Err
3388: ' GoTo FunctionX_Exit
3394:GoTo FunctionX_Exit
3456:FunctionX_Err:
3460:FunctionX_Exit:
但正如你所看到的,它也给了我不是函数调用的实例。对于VB函数调用,函数名称后面没有任何东西,所以我假设它是一个函数调用,后跟空格。我试过了 -
grep -nr "FunctionX[[:space:]]" FormX.frm
然而,这没有给我任何结果。这是因为“\ n”不被认为是空格吗?在代码中每次调用FunctionX后都会跟一个“\ n”。如果是这样,我如何获得所需的结果?请帮帮我。谢谢。
答案 0 :(得分:1)
尝试在行尾匹配
grep -nr 'FunctionX[[:space:]]*$' FormX.frm
记住grep正在逐行查看输入,所以它不会看到回车。上面的模式找到任何以FunctionX结尾的行,并在行尾之前跟随它后面有一些可能的(真实)空格。