查找日志技巧

将文本中带有 viewWillAppear 的所有行打印出来

1
cat test.log | grep -n -i 'viewWillAppear' > result.log

其中,-n:显示行号;-i 忽略大小写

将文本中带有 QLASIHTTPRequest 的所有行过滤掉

1
sed '/QLASIHTTPRequest/d' test.log > result.log

/QLASIHTTPRequest/d 表示对所有匹配到 QLASIHTTPRequest 的行执行 delete 命令

关于 sed 的更多用法,见 SED 简明教程

使用正则表达式查找 C++ 所有的复制构造函数

以 QVNContext::QVNContext(const QVNContext &context) 为例

1
(.+)::\1\(.*\1\s.*
  1. 将文本中带有 viewWillAppear 的所有行打印出来
  2. 将文本中带有 QLASIHTTPRequest 的所有行过滤掉
  3. 使用正则表达式查找 C++ 所有的复制构造函数