我们经常在Linux系统下使用的各种命令,比如常见的cat、grep、ls,这些都是“瑞士军刀”busybox这类开源工具包提供。

由于开源协议友好度的原因,OpenHarmony系统自带的工具包是toybox。

toybox它是个精简的工具包,没busybox那么丰富的命令,比如缺少vi文本编辑、wget下载、arp等命令。

如下图,在OpenHarmony的开发板上执行,可以看到cat、ls、grep、ping等命令都是由toybox最终提供,而找不到vi、wget等命令。

开发者平时喜欢丰富的命令进行调试,特别是习惯使用linux的开发者,总感觉toybox提供的命令不够丰富,用起来缺胳膊少腿的,影响效率。

那么,如何使用更丰富的命令集busybox?

其实,我们只要弄到一个busybox推进去系统就行了。

怎么弄到一个可用的busybox?有几个方法,这些都不需要我们自己移植和编译。

方法一:

去busybox官网下载一个编译好的二进制,下载时需要注意选择正确的版本:支持arm、支持musl libc库。

下载后按照官方指导进行安装。

详细可以参考:(156条消息) 在OpenHarmony中使用busybox_openharmony busybox_qq_17814753的博客-CSDN博客

 

方法二:

使用其他人已经移植验证好的busybox。

我在下面网盘中共享了一个可用的busybox,不需要类似官网那么复杂的安装步骤,下载后直接推送的开发板/system/bin目录下就可以。

链接:https://pan.baidu.com/s/13yBvfh5sQHGzqf_WzJ5Q0Q 
提取码:hl8b 
--来自百度网盘超级会员V3的分享

按照如下方法几步,即可使用busybox的命令了。

 

hdc.exe shell mount -o remount,rw /
hdc.exe file send "D:\OpenHarmony\tools\busybox" /system/bin/
hdc.exe shell
# chmod a+x /system/bin

 因为没有创建vi命令到busybox的软链接,可以在执行vi的时候,前面加上busybox,完整命令为“busybox vi xxx文件名”。

示例如下: 

 

wget、arp等其他命令的使用方法都是类似的

 

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐