adb shell 是什么,如何进入?

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: <p>本文适合于想了解android系统基础知识,知道大家说的adb shell 到底是怎么回事儿的小白同学。<br> (主要偏向于windows用户,相信如果你用linux...本文可能已经帮不到你什么了)<br><span style="word-wrap:normal; word-break:normal">一,从操作系统开始<br></span>windows、linux、Mac

本文适合于想了解android系统基础知识,知道大家说的adb shell 到底是怎么回事儿的小白同学。
(主要偏向于windows用户,相信如果你用linux...本文可能已经帮不到你什么了)
一,从操作系统开始
windows、linux、Mac、ios、android、meego..
这个世界上有这么多操作系统呀,看起来风格迥异,相差很多。
但其实它们之间的关系,没有那么远。
它们其实有一个共同的祖先:unix
。。。(中间省过10000字)
经过N多版本的进化,它们的原理并没有什么本质的区别,主要区别是内存的管理和人机交互方式。
二,什么是adb shell
上面的第一部分看起来与第二部分一点儿关系都没有。。。汗~
先说什么是shell, 操作系统运行的本身其实并不需要人来控制。
但人需要告诉操作系统做什么,这个交互程序,就被称为shell。
这里我把shell分成三种:

  • 图形shell:
这种shell有很多种,windows的Explorer.exe,Linux的Gnome/Kde ....
在windows看到的桌面,开始菜单,也是一种图形shell
  • 终端Shell:
终端Shell除了windows下的cmd.exe已经弱化到残废的地步,其他的操作系统都是比较强悍的;
终端Shell最大的特点是字符操作,没有图形,试想,如果你的操作系统显卡驱动崩溃了,绘图功能不举了,这就是最后的稻草了。
事实上,几乎所有的显卡驱动都是在终端Shell下编写,然后用于绘制图形Shell....
特别是在linux\mac\android下面,终端Shell是灰常的强大的。
如:bash\zsh\....
  • 其他Shell:
还有很多,与本文无关,不讨论。

OK, 说到这儿,大家都应该明白了,adb shell ,其实就是连接到咱们的KF(android)的终端shell。举个例子,我们可以在RE管理器里把一个文件从/sdcard/ 复制到/sbin..
操作还是比较麻烦的,但在adb shell中可以这么做:
cp /sdcard/a.txt /sbin/

二,如何在windows下进入adb shell
这个小节真的不想写,因为windows下的终端Shell工具本身太残废了。。。
不过太多人使用windows了,无奈之中,好吧。。。
大家还记得一键Root的那个程序吧,其实看了本文之后,稍加研究,大家应该可以理解那个批处理中的所有命令。
OK,我们开始进入adb shell吧。。。
1. 进入windows的终端Shell:要进入KF的终端shell ,我们要从操作系统的shell来连接。
从上一小节我们就知道了,linux/mac下用“终端”程序就好;而windows, windows键+R , 然后输入 cmd 按回车,出来个小小窗口,黑黑的,这个可爱的窗口就是windows的Shell了。
2. 连接到KF的shell:这个步骤非常简单,直接进入到我们的adb.exe程序所在目录,执行adb shell就可以。
相信看了上面这句话,有人会迷失。。。说实际操作吧:
在本帖附件下载那个adb.zip,解压到c盘的kf目录。然后在小黑窗口输入:
  1. C:\Users\Tony>
  1. c:> cd c:\kf
  1. c:\cf> adb shell
  1. * daemon not running. starting it now *
  1. * daemon started successfully *
  1. $
复制代码

三,如何在linux/mac下进入adb shell

把附件解压,如果你是Linux:
cp -r .android ~
./adb-linux shell
如果你是mac:
cp -r .android ~
./adb-mac shell
没错,就是这么简单,而且,无需安装任何驱动,也不会有任何问题。
OK,这样你就进入到KF的终端shell中了,本文就到这里了。
=================================================================

下面展示一下这个shell的一起操作:
  1. 使用root用户,拥有最高权限:
  1. su root

  1. 让整个系统文件都可以有权限操作:
  1. mount -o remount,rw rootfs /system

  1. 复制一个文件到另一个地方:
  1. cp /xx/xx.xx /oo/

  1. 删除一个文件:
  1. delete /oo/xx.xx

  1. 重启:
  1. reboot
复制代码

一些连接问题:
(费话:windows这个坑爹的系统,问题多多,我不知道如果要把windows下全部的操作写出来要多少字。。。)
为什么adb shell命令会返回error: device not found?
这个问题竟然是你的碗豆荚之类的软件给kindle安装的驱动导致的。
需要强制安装下载压缩包里usb_driver里带的驱动。
然后把附件压缩包里的.android 文件夹放到你的用户目录,如 C:\Users\Tony
关于这个问题,有个图文教程,看这里:
http://rootkindlefire.com/kindle-fire-root/how-to-root-kindle-fire/
大家还有什么问题,请详细描述在回复中,大家可以一起来解决。

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
6月前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
513 1
|
5月前
|
Shell 开发工具 Android开发
|
6月前
|
存储 安全 Shell
Android系统 adb shell auth授权使用
Android系统 adb shell auth授权使用
420 2
|
Shell Linux Android开发
支付宝二维码脱机认证库测试过程记录(andorid平台adb shell验证)
支付宝二维码脱机认证库测试过程记录(andorid平台adb shell验证)
|
Shell Linux Perl
Adb Shell输入带空格的文本串
Adb Shell输入带空格的文本串
335 0
|
Java Shell Linux
Android 通过adb shell命令查看内存,CPU,启动时间,电量等信息
Android 通过adb shell命令查看内存,CPU,启动时间,电量等信息
1031 0
|
存储 Shell 数据库
adb shell查看sqlite数据库
android的数据持久化方案常用的有三种: 文件存储 SharedPreferences存储 SQLite数据库存储 文件存储路径为:data/data/包名/files SharedPreferences储路径为...
989 0
|
15天前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
53 1
|
1天前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
11 2
6种方法打造出色的Shell脚本