Android自带的toolbox(位于/system/bin中)是常见Linux命令的阉割缩水版,一些常见的命令不支持或者支持的不好(例如支持的参数少了)。为此,为了使用功能完整的linux命令,我们需要使用添加第三方工具集Busybox。

BusyBox 是标准 Linux 工具的一个单个可执行实现。BusyBox 包含了一些简单的工具,例如 cat 和 echo,还包含了一些更大、更复杂的工具,例如 grep、find、mount 以及 telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀.简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令。(摘自百度百科)。

下载BusyBox的binary,http://www.busybox.net/downloads/binaries

选择相应的版本,一般来说,android手机是选择arm版的最新版即可。或者进入android手机的命令行,查看/proc/cpuinfo这个文件。我下的是busybox-armv7l。下载之后重命名为busybox。

1. 打开adb命令行,在data目录下创建busybox文件夹(可以叫其它名字)

adb shell

mkdir /data/busybox

2. 退出adb shell,复制busybox文件到该目录下

exit

adb push busybox /data/busybox

3. 进入adb shell,修改busybox的权限的为755, 修改后可以通过ls -l查看。

adb shell

chmod 755 /data/busybox/busybox

4. 这时就可以使用busybox

但是使用的时候要带上路径,例如 /data/busybox/busybox ls;

如果当前目录在/data/busybox下,可以使用./busybox ls

如果希望在任何目录下都可以直接使用bosybox,则需要将路径/data/busybox export到path环境变量中:

export PATH=$PATH:/data/busybox

但是退出这个命令行后export的就失效了。要想永久生效,需要把这行添加到环境变量文件里或者将busybox文件放到系统定义好的环境变量的位置中。一般"/sbin","/system/bin","/system/sbin","/system/xbin"已经预定义了。可以使用export查看已有的环境变量,使用echo $PATH查看变量PATH的内容。

其它:

其实,也可以通过先把busybox文件复制到/sdcard/,再复制或移动busybox文件到非/mnt的路径。

关于busybox的安装

cd /data/busybox/

./busybox --install .

记得一定要cd到/data/busybox目录下,还有install后面有一个.表示当前。

这个操作只是安装到/data/busybox中,不是安装到PATH中,所以打命令的时候还是需要加上路径,

这里只是示范busybox的安装而已。

更多相关文章

  1. Android(安卓)建立AIDL的步骤
  2. [Android]自定义组件示例:使用attrs.xml文件定制RadioButton
  3. Android(安卓)ProgressBar 自定义样式(一)
  4. 玩懂Log,打开Android大门(sundy深入浅出)之一
  5. Android程序员指南(12)
  6. Android生成签名文件并用其对apk文件进行签名(Failure [INSTALL_P
  7. android 根文件系统 init
  8. .net程序员转战android第一篇---环境部署
  9. Android中jar包封装及调用中出现的问题及解决方案

随机推荐

  1. Android中native进程内存泄露的调试技巧
  2. 深入浅出 - Android系统移植与平台开发(六
  3. webservice二进制文件传输
  4. Android高手进阶教程(三)之----Android(
  5. Android多点触控开发原理
  6. android 触摸事件、点击事件的区别
  7. Android(安卓)Service生命周期及用法
  8. Android(安卓)事件分发
  9. Android(安卓)HAL实现的三种方式(3) - 基
  10. 10个常见的 Android(安卓)新手误区