首页 > 代码库 > 使用adb在电脑和手机间传文件
使用adb在电脑和手机间传文件
首先需要root手机。
然后,“Win + R”,打开cmd窗口。下面以copy d:\1.txt到/system/目录为例说明
adb push source(localpath) dest(mobilepath)
d:\>adb push 1.txt /system
failed to copy ‘1.txt‘ to ‘/system/1.txt‘: Read-only file system
需要先挂载/system分区
adb devices查看当前连接的设备
d:\>adb devices
List of devices attached
4d00a813e1e84041 device
如果这个列表里没有设备,需要检查手机连接。
adb shell远程登录手机的linux系统
d:\>adb shell
shell@android:/ $
su命令取得超级用户权限,命令提示符会由”$”变成”#”
shell@android:/ $ su
shell@android:/ #
df命令查看文件系统的磁盘空间占用情况
shell@android:/ # df
Filesystem Size Used Free Blksize
/dev 930M 80.0K 930M 4096
/mnt/secure 930M 0.00K 930M 4096
/mnt/asec 930M 0.00K 930M 4096
/mnt/obb 930M 0.00K 930M 4096
/persdata/absolute 11.8M 4.09M 7.68M 4096
/system 2.69G 2.27G 434M 4096
/efs 19.6M 9.15M 10.5M 4096
/cache 1.99G 32.4M 1.96G 4096
/data 8.92G 7.66G 1.26G 4096
/mnt/shell/emulated 8.90G 7.66G 1.24G 4096
/mnt/shell/container 8.90G 7.66G 1.24G 4096
/system分区是2.69G
shell@android:/ # cat /proc/partitions
major minor #blocks name
253 0 409600 zram0
179 0 15388672 mmcblk0
179 1 4096 mmcblk0p1
179 2 4096 mmcblk0p2
179 3 20480 mmcblk0p3
179 4 4096 mmcblk0p4
179 5 4096 mmcblk0p5
179 6 4096 mmcblk0p6
179 7 20480 mmcblk0p7
259 0 8192 mmcblk0p8
259 1 8192 mmcblk0p9
259 2 8192 mmcblk0p10
259 3 8192 mmcblk0p11
259 4 8192 mmcblk0p12
259 5 90112 mmcblk0p13
259 6 262144 mmcblk0p14
259 7 4096 mmcblk0p15
259 8 573440 mmcblk0p16
259 9 12288 mmcblk0p17
259 10 4096 mmcblk0p18
259 11 2121728 mmcblk0p19
259 12 2830336 mmcblk0p20
259 13 9379840 mmcblk0p21
根据大小选择挂载mmcblk0p20
shell@android:/ # mount -o rw,remount /dev/block/mmcblk0p20 /system
我试了不带分区,也是可以的
shell@android:/ # mount -o rw,remount /system
使用完之后可以再改为read-only
shell@android:/ # mount -o ro,remount /dev/block/mmcblk0p20 /system
执行拷贝
d:\>adb push 1.txt /systemfailed to copy ‘1.txt‘ to ‘/system/1.txt‘: Permission denied
ls -l命令查看文件权限,可以看到shell用户没有读/写权限,修改文件权限
shell@android:/ # chmod 777 /system
再push,成功。
从手机拷贝文件到电脑是类似的,adb pull source(mobilepath) dest(localpath)
d:\>adb pull /system/1.txt D:\game
如果提示"Permission denied",就需要修改文件权限,chmod xxx 文件名。如果想修改目录下所有文件属性,可以用chmod xxx *.*。