Shell脚本常用命令

1,069 阅读4分钟

Linux常用命令

ls常用命令

ls -a 列举出当前目录所有文件,包括隐藏文件

ls -r 正常列举顺序反序列化输出

ls -t 按照文件修改时间排序输出

ls -S 按照文件大小排序输出

ls -l 列举出文件名、文件的权限、所有者、文件大小等信息

cd常用命令

cd /usr/local/src   切换到指定路径(使用绝对路径方式)

cd ~ 进入当前用户的家目录

cd - 进入上次目录

cd .. 进入上一级目录

cd . 进入当前目录

rm常用命令

rm 文件名 删除文件

rm -r 目录名 删除当前目录下所有数据,包括当前目录文件

rm -f 文件名 强制删除文件

rm -rf 目录名 强制删除当前目录下所有文件,包括当前目录文件

grep常用命令

grep命令用于查找文件里符合条件的字符串。

grep <指令名称> <需要匹配的字符串> <文件路径>

常用指令名称

-A
--after-context
显示符合范本样式的那一行之外及该行之后的内容

echo "aaaa\nbbbb\ncccc\ndddd" | grep -A 1 aaaa 
echo "aaaa\nbbbb\ncccc\ndddd" | grep --after-context 1 aaaa

输出内容:
aaaa // 该行高亮
bbbb


-b
--byte-offset
输出匹配行并且在在该行前展示第几行

echo "aaaa\nbbbb\ncccc\ndddd" | grep -b aaaa
echo "aaaa\nbbbb\ncccc\ndddd" | grep --byte-offset aaaa

输出内容:
0:aaaa


-c
--count
输出符合匹配字符串的行数

echo "aaaa\nbbbb\ncccc\ndddd" | grep -c aaaa
echo "aaaa\nbbbb\ncccc\ndddd" | grep --count aaaa

输出内容:
1


其他命令

pwd 展示当前页面全路径
 
mkdir 创建空文件夹

rmdir 删除空文件夹

touch 创建空文件

cat 文件名 查看当前文件内容

cat -n 文件名   查看当前文件内容并在行首列出行号

cp 源文件地址 目标地址 将文件复制到新地址

mv 源文件地址 目标地址 将文件移动到新地址

Android常用命令

adb命令

获取当前界面元素

adb shell dumpsys activity top

获取任务列表

adb shell dumpsys activity activities

app入口

adb logcat | grep -i displayed

启动应用

adb shell am start -W -n com.xxx.android/.view.WelcomeActivity -S

列出当前已连接的设备

adb devices -l

输出内容:

List of devices attached  
7d97e1fa                device usb:336871424X product:umi model:Mi_10 device:umi

连接指定设备

adb -s <SERIAL> shell

例:(SERIAL的值为adb devices -l 输出的值)

adb -s 7d97e1fa shell

屏幕截图

adb shell screencap /sdcard/screen.png

获取屏幕截图

adb pull /sdcard/screen.png 

录制视频

adb shell screenrecord /sdcard/demo.mp4

获取录制视频

adb pull /sdcard/demo.mp4

dumpsys命令

测试界面性能

输出中会包含录制阶段所发生的动画帧的相关性能信息。以下命令使用 gfxinfo 收集指定软件包名称的界面性能数据:

adb shell dumpsys gfxinfo package-name

输出最近帧性能信息

adb shell dumpsys gfxinfo package-name framestats

检查网络诊断信息

netstats 服务可提供自设备上次启动以来收集的网络使用情况统计信息

adb shell dumpsys netstats detail

检查电池诊断信息

batterystats 服务会生成关于设备电池用量的统计数据

adb shell dumpsys batterystats options

options列表

option简介
--checkin生成签入报告的输出
-c以签入格式写入当前统计信息
--proto以 proto 格式写入当前的汇总统计信息(没有历史记录)
--history只显示历史数据
--history-start < num >仅显示从给定时间偏移量开始的历史数据
--history-create-events < num >
创建 < num >个电池历史事件。
--charged仅输出自上次充电以来的数据。
--daily只输出完整的每日数据
--reset重置统计数据,清除所有当前数据
--write强制将当前收集的统计信息写入磁盘
--new-daily立即创建并写入新的每日统计记录。
--read-daily读取加载上次写入的每日统计信息。
--settings转储与 Batterystats 相关的设置键/值
--cpu转储 cpu 统计数据用于调试目的

使用以下命令以计算机可读的 CSV 格式生成 batterystats 输出:

adb shell dumpsys batterystats --checkin

输出内容:

9,0,i,vers,35,187,QKQ1.191117.002,RKQ1.200826.002
9,0,i,uid,1000,com.miui.screenrecorder
9,0,i,uid,1000,com.android.dynsystem
9,0,i,uid,1000,com.miui.powerkeeper
9,0,i,uid,1000,com.miui.qr
9,0,i,uid,1000,com.miui.contentcatcher
9,0,i,uid,1000,com.xiaomi.powerchecker
9,0,i,uid,1000,com.bsp.catchlog
9,0,i,uid,1000,miui.systemui.plugin
9,0,i,uid,1000,com.xiaomi.mi_connect_service
9,0,i,uid,1000,com.android.networkstack.inprocess
9,0,i,uid,1000,com.miui.securitycenter
9,0,i,uid,1000,com.miui.thirdappassistant
9,0,i,uid,1000,com.xiaomi.aiasst.vision
9,0,i,uid,1000,com.miui.notification
9,0,i,uid,1000,com.miui.daemon
9,0,i,uid,1000,com.wapi.wapicertmanage
...

更多详细信息见官网:developer.android.com/studio/comm…