工作中常用的一些shell命令

开发人员掌握一些常用的命令,对于提高效率(B格)是很有帮助的,本篇文章记录下平时工作中常用的shell命令,同时也是为了测试一下新安装的markdown editor插件

查看签名文件信息

当我们想查看一个签名文件的md5等信息的时候,这个命令就很实用了,现在的一些应用市场认领应用啊,接入一些第三方的sdk啊,一般都需要apk的签名信息

1
keytool -list -v -keystore debug.keystore

压缩命令

平时打完渠道包发给商务运营人员的时候,这个命令很常用

1
2
3
4
5
6
7
8
//压缩文件a.apk到a.zip中
zip a.zip a.apk

//压缩文件夹a到a.zip中
zip -i a.zip a

//加密压缩文件a.apk
zip -e a.zip a.apk

grep命令

1
2
3
4
5
6
//grep 查找某个字符串
grep -rin baidu ./ 查找当前目录下所有包含baidu字段内容,并显示行号
//grep 查找包含某个字符串的文件
grep -rl baidu ./ 查找当前目录侠所有包含baidu的文件名
-r 递归 -i 忽略大小写 -n显示行号(从1开始)
-l --files-with-mathches -L --file-without-mathch

比如当平时Android手机发生应用FC的时候,我们可以通过grep命令去在杂乱logcat找出crash信息:

1
2
3
4
//抓取crash logcat信息(-A显示结果附近20行)
adb logcat | grep -i "FATAL" -A 20
-A num, --after-context=num 搜索内容后面显示多少行
-B num, --before-content=num 搜索内容前面显示多少行

查看activity任务栈信息

主要用于查看当前正在运行的任务栈信息,有助于分析activity的各种启动模式

1
adb shell dumpsys activity activities | grep -i run

删除空文件

1
find . -type f -size 0 -delete

上面这些都是自己日常开发中经常用到的命令,熟练掌握这些命令是很有帮助的,如果想查看每个命令的更多用法可以使用man xxx去看官方用法说明