RT 目前我的思路是使用 find 找到当前目录下所有头文件,然后使用 cat 打印其内容,再使用 grep 筛选关键字。问题是不知道怎么取到行数和路径,求指导。
find . -name "*.h" -exec cat {} + | grep ${reg}
输出:
- (id)fetchUsersByIds:(id)arg1 conversationId:(id)arg2;
- (id)fetchUser:(long long)arg1 userSource:(long long)arg2 extModel:(id)arg3;
- (id)fetchUsersByIds:(id)arg1 userSource:(long long)arg2 extModel:(id)arg3;
- (id)fetchUser:(long long)arg1;
1
zbinlin 2019-04-23 18:55:17 +08:00
man grep
* 加 -n 显示行数 * 加 -H 显示文件路径 |
3
zbinlin 2019-04-23 18:58:22 +08:00 1
find . -name "*.h" | xargs -i grep -nH ${reg} {}
|
4
0x11901 OP @zbinlin 我改了一下:find . -name "*.h" -exec grep -nH ${reg} {} + 可行!,感谢🙏
|
5
rrfeng 2019-04-23 21:15:45 +08:00 via Android
grep -n -R xxx ./**/*.h
|