最近 scrcpy 用得比较多,于是顺带也用了一下 adb,感觉也挺好用的,开了无线调试以 后,我的安卓老家伙也能隔空投送文件了,还跨平台。喜欢命令行的朋友可以试试。
之前我在通讯软件上接收的文件如果要保存到电脑,一般是在电脑上打开相同的软件另存一 份,最近我的老电脑上的软件莫名崩了几次,让我觉得它可能有些力不从心了,就想给它减 减负,直接用 scrcpy 操作安卓上的通讯软件。打字聊天问题不大,但是如何把文件转移到 手机,这就要比以前麻烦了。
我之前有一篇文章有写如何启用无线调试,这里不再重复。为什么强调是无线连接,因为如 果是有线连接到电脑,那其实意义不大了,因为我们可以直接让电脑访问安卓设备文件。
放到下载目录这个条件其实也可以不要,ADB 可以看到手机上的所有文件。不过我觉得这样 好找一点,而且一般我们下载文件时,安卓系统或者应用默认也是把我们下载的文件丢 到 Download 目录。
把手机文件转到电脑上,对于 ADB 来说需要用到两个命令:
adb shell ls <路径>
这个命令会列出设备中某个路径下的所有文件,如果是下载目录的话,一般这个路径
是 /sdcard/Download
。
其实如果我们知道文件名,这个命令也是可以忽略的,不过我个人是觉得有必要使用这个命 令,因为这样我们可以先列出文件名,然后直接复制就好了。
好了,接下来是重头戏,下载文件的命令:
adb pull <文件路径> .
这个命令可以把安卓设备的指定文件拉到当前目录,如果当前目录还不够方便的话,还可以
把 .
换成其它目录。另外如果文件路径中有空格,记得转义,或者简单一点用英文双引
号包起来,避免路径中的空格把原始路径拆成两个参数。
讲到这里了还可以多讲一些,现在我们可以把文件无线推到电脑,当然,反过来推也是没有
问题的,只要把 pull
改成 push
:
adb push <电脑文件路径> <安卓设备路径>
这样文件就推到安卓设备上去了,只要我们路径写对,安卓设备外接的记忆卡也是没有问题 的。
adb 这么方便,可能会有不少朋友和我一样,哗哗啦啦所有手上的安卓设备都开启了无线调
试。这么多设备连上来,我们如何区分当前操作的是哪台设备呢,我们需要给 adb 加一个
参数 -s <ip:port>
:
adb -s173.17.101.250:12345 push ~/Downloads/share/a.pdf /storage/1234-4567/Downloads/
这样 adb 就知道我们要控制哪台设备了。
可能很多朋友都有隔空投送的需求,不晓得大家是怎么解决的,原生那自然是最好,土法炼 钢的我,之前主要是靠 onedrive、sshelper 之类的应用,现在不需要应用了,打开无线调 试,adb 就可以操作,是不是方便了一点。
不过我估计也会有不少朋友发现这是命令行工具而望而却步,不必过于恐惧命令行,你只是 没有迈出第一步而已,我最早接触电脑是通过命令行,后来电脑越来越强大,也开始不太喜 欢命令行工具,能鼠标拖拖拉拉指指点点,就坚决不碰命令行,现在又回归了命令行。为什 么这么一圈又绕了回来,我是觉得命令行比较注重于高效,你清楚它能干什么,清楚自己想 要什么,命令行就更便捷高效,而图形界面则是注重于指引,不太熟悉的程序,在界面上指 指点点,很快就可以知道这个程序大概能做什么,但是熟悉后还是要按指引式的操作来执 行。adb 我不晓得是否有图形界面,不过对我来说是够了,我也鼓励不太喜欢命令行的朋 友,先试试看,感受一下,再决定是不是适合自己。