
# 常用ADB命令有哪些？
本小节提供常用的ADB命令，方便您日常使用。
#### 基础操作
- 安装APP
  ```
  adb install -r xxx.apk  //重新安装现有应用，保留其数据和缓存文件
  adb install -s xxx.apk  //安装apk到SD卡
  adb install -f xxx.apk  //安装apk到内部系统内存
  ```
  
- 获取安装位置
  ```
  adb shell pm get-install-location
  ```
  
- 卸载APP
  ```
  adb uninstall <package>
  adb uninstall -k <package>  //卸载APP但保留数据和缓存文件
  ```
  
- 启动adb服务
  ```
  adb start-server
  ```
  
- 关闭adb服务
  ```
  adb kill-server
  ```
  
- 进入shell环境
  ```
  adb shell
  ```
  
- 退出shell环境
  ```
  exit
  ```
  
 
#### 设备信息查看
- 查看所连接的设备以及设备所对应的序列号
  ```
  adb devices
  ```
  
- 查看手机CPU架构和内核个数
  ```
  adb shell cat /proc/cpuinfo
  ```
  
- 查看系统的详细内存信息
  ```
  adb shell cat /proc/meminfo
  ```
  
- 获取手机磁盘空间
  ```
  adb shell df
  ```
  
- 获取手机系统版本
  ```
  adb shell getprop ro.build.version.release
  ```
  
- 获取机器MAC地址
  ```
  adb shell cat /sys/class/net/wlan0/address
  ```
  
 
#### 软件包管理器（pm）相关
- 清除与应用关联的所有数据
  ```
  adb shell pm clear <package>
  ```
  
- 查看指定应用的apk路径
  ```
  adb shell pm path <package>
  ```
  
- 查看所有已安装的应用的包名
  ```
  adb shell pm list packages
  ```
  
- 查看含有"android"字段的应用的包名
  ```
  adb shell pm list packages android
  ```
  
- 查看第三方应用的包名
  ```
  adb shell pm list packages -3
  ```
  
 
#### 进程查看
- 各进程内存使用情况
  ```
  adb shell procrank
  ```
  
- 查看应用的进程信息
  ```
  adb shell "ps | grep <package>"
  ```
  
- 结束一个进程
  ```
  adb shell kill [pid]
  ```
  
 
#### 文件操作
- 从本地设备向手机发送文件
  ```
  adb push file mobile_directory
  ```
  示例：
  将本地设备上的"C:/Downloads/test.png"文件发送至手机的"/data/media/0/Pictures"目录下，请执行**adb push** **C:/Downloads/test.png /data/media/0/Pictures**命令。可通过如下方法验证是否发送成功：
  ```
  adb shell
  cd /sdcard/Download
  ls
  ```
  
- 从手机复制文件到本地设备
  ```
  adb pull file local_computer_directory
  ```
  示例：
  将手机上的"/sdcard/Download/test.png"文件复制到本地设备的"C:/Downloads"目录下，请执行**adb pull /sdcard/Download/test.png C:/Downloads**命令。
  
- 移动文件/文件夹
  ```
  adb shell mv path/file newpath/file
  ```
  
- 新建文件夹
  ```
  adb shell mkdir path
  ```
  
- 新建文件
  ```
  adb shell touch filename
  ```
  
- 重命名文件/文件夹
  ```
  adb shell rename path/filename newpath/newfilename
  ```
  
- 查看文件内容
  ```
  adb shell cat file
  ```
  
 
