Android10以上系统定制Root权限(隐藏Root权限)
Android系统开发过程,经常需要进行文件查找、代码查找,常用find和grep查找命令
1.find命令
根据文件的属性进行文件查找
文件属性:
文件名、文件大小、所有者、所属组、是否为空、访问时间、修改时间等
(1).按文件名查找
find / -name PowerManagerService.java
表示在根目录下查找PowerManagerService.java文件,相当于在整个磁盘查找
find frameworks/ -name PowerManagerService.java
表示在frameworks目录下查找PowerManagerService.java文件
find frameworks/ -name 'PowerManager*'
表示使用通配符*(0个或任意多个),在frameworks目录下查找文件名开头是字符串'PowerManager'的文件
find . -name 'PowerManager*'
表示在当前目录下(包含子目录)查找文件名开头是字符串'PowerManager'的文件。
(2).按照文件特征查找
find frameworks/ -amin -10
表示在frameworks目录下查找最后10分钟访问的文件
2.grep命令
grep命令的主要参数
-i:不区分大小写
-n:显示匹配行及行号
-r:包含子目录
-c:只输出匹配行的计数
-w:匹配整个单词
grep 参数 "内容" 查找目录或文件
(1).按内容查找
grep 'set' Power*
显示所有以Power开头的文件中包含set的行
grep Power ShutdownThread.java
显示ShutdownThread.java文件包含Power的行
grep Power PowerManagerService.java
显示PowerManagerService.java文件包含Power的行
grep -n -i "Shutdown" PowerManagerService.java
显示PowerManagerService.java文件包含Shutdown的行
grep -n -i "Reboot" PowerManagerService.java
显示PowerManagerService.java文件包含Reboot的行
grep -n -i -r "Shutdown" power/
显示power目录下(包含子目录)的文件包含Shutdown的行
grep -n -i -r "createVirtualDisplay" frameworks/
显示frameworks目录下(包含子目录)的文件包含createVirtualDisplay的行
3.find和grep命令结合使用
先使用find命令查找文件,然后使用grep命令查找哪些文件包含某个字符串
find frameworks/ -name "*.java" | xargs grep -n "Shutdown"
find frameworks/ -name "*.cpp" | xargs grep -n "main"
4.常用查找命令
find . -name "*.cpp" | xargs grep -n "xxx"
find . -name "xxx.cpp"
find . -name "xxx.java"
find . -name xxx.java
find . -name "*.java" | xargs grep -n "xxx"
find . -name "*.bp" | xargs grep -n "xxx"
find . -name "*.xml" | xargs grep -n "xxx"
find . -name "*.sh" | xargs grep -n "xxx"
find . -name "*.mk" | xargs grep -n "xxx"
find . -name "*.prop" | xargs grep -n "xxx"
grep xxx xxx.java
grep -n -i "xxx" xxx.java
grep -n -i -r "xxx" frameworks/
find . -name "*.java" | xargs grep -n "shutdownOrRebootInternal"
Android ANR/Crash Log日志分析技巧总结(建议收藏)
Android系统定制/测试(Crash/ANR等Bug/性能分析必备技巧)
推荐阅读
Android系统源码在线阅读(Android4~Android13)
http://aospxref.com/
http://androidxref.com/
https://aosp.opersys.com/