u-boot移植随笔:让u-boot shell支持tab、命令历史

前两天一直在想一个问题,u-boot的shell怎么不支持命令自动补齐,命令历史呢?由于受linux的shell影响,只要其它的“shell”有点什么不好的,一试就能感觉出来,所以要设置回那些基本功能。

我搜啊搜,陷入了自己设置给自己的深渊了。下面写一下自己找到的结果——虽然这些努力基本是白费的。

u-boot的shell使用的是HUSH shell,来自busybox的那个HUSH shell。hush.h在./include/里面,hush.c在./common里面,对比busybox那个hush.c发现u-boot的这个少很多(单从文件大小来看,具体没能力研究),应该是减少很多功能了。再去查busybox用了哪些shell,结果有msh shell、ash shell、hush shell,看busybox的配置(make menuconfig命令)时,上面明确说msh已经不再用了,代替为hush shell,但在网上查到的很多都是关于msh,郁闷啊!

我想啊想啊,会不会要我自己实现这些东西呢?那就得研究shell的代码了,这工程可不小。后面又试了vivi的shell,这个shell有我想要的功能。难不成就研究它的代码?

后来google到了u-boot的邮件列表上去了,上面的u-boot版本是1.1.6,跟现在这个差了N年了。不过学习下也无所谓。一不小心,看到一句话:

Yes, it does. You have to enable it in the configuration, though.

一语点醒梦中人!再看提问者的回答:

It's realy a nice feature for debug. I just tried that for u-boot
1.1.6 and it worked fine. Enable CONFIG_CMDLINE_EDITING.

靠!原来就这么简单!一切都在人家掌握之中!唉,由于自己才疏学浅、孤陋寡闻导致这两天搞得自己走了很多冤枉路。不过,有失必有得,怎么说自己也学到点东西了。

只要在开发板相关的头文件,如smdk2440.h定义下面两个宏,就能实现命令自动补齐、命令历史,一切就搞定了!

#define CONFIG_CMDLINE_EDITING
#define CONFIG_AUTO_COMPLETE

有时候,学习,就这么简单。

PS:有个时间无聊,学emacs走火入魔了,在敲命令时手贱,按了C-p,有大发现,之后再试C-n、C-a、C-e、C-d,等等,结果大大发现,没想到这些命令也能应用于shell!!!真是太爽了!!对于不想按那些箭头按键的人来讲,这些命令可以一试。

本文随意写写,大家随意看看,不必当真。

u-boot移植随笔:让u-boot shell支持tab、命令历史相关推荐

  1. shell介绍,命令历史,命令补全和别名 ,通配符, 输入输出重定向

    2019独角兽企业重金招聘Python工程师标准>>> shell介绍 shell是一个命令解释器,提供用户和机器之间的交互: 支持特定语法,比如逻辑判断.循环: 每个用户都可以有自 ...

  2. 8.1-8.5 shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向

    8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 8.1 shell介绍 Linux Shell基础 介绍shell的特性,用法. shell是 ...

  3. 【Linux学习随笔】三、shell语法-echo命令

    一.echo的作用 用来输出字符串,作用跟printf很相似,但不是完全一样.shell语言中也有printf命令 二.常用用法 (1)输出字符串 举例: echo "udududdu&qu ...

  4. linux 进入shell命令,linux或者shell进入vi命令

    vi的基本操作 a) 进入vi     在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面: $ vi file 不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command ...

  5. u-boot移植随笔:u-boot shell与ASCII码

    u-boot移植随笔:u-boot shell与ASCII码 前几天让u-boot的shell更接近"shell",发现可以使用Ctrl-p等等来控制,心里总在想它们是怎么实现的, ...

  6. u-boot移植随笔:u-boot的内存分布图

    花了两天时间来专门研究u-boot的内存分布,这个图网上已经有了,但只是大致图形,没有详细.深入解析.所以自己就专门画了图,添加一些东西. 此外,还专门测试了一下u-boot下全局变量.未初始化变量等 ...

  7. u-boot移植随笔:自定义u-boot命令点灯

    u-boot移植随笔:自定义u-boot命令点灯 前几天一不小心在CSDN论坛上发帖散分,同时许诺完成点灯就结账,经过努力,终于可以在u-boot的shell中输入自定义的命令来点灯了.下面简单讲一下 ...

  8. u-boot移植随笔:System.map文件格式

    u-boot移植随笔:System.map文件格式 背景:正在努力看u-boot代码,已经研究了两三天,内容太多,一时难理清头绪.不过有一定的linux基础,也懂点gnu扩展,elf格式,连接器还没有 ...

  9. Spring Boot 上传文件(spring boot upload file)

    本篇文章将说明在Spring Boot web程序中如何上传文件. 开发环境: 1. eclipse Oxygen Release (4.7.0) 2. Spring Boot 1.4.3 RELEA ...

最新文章

  1. Java 单列模式(Singleton)
  2. ACM入门之【最短路】
  3. 【GVA】gorm多对多关联使用Preload带出关联表中的数据
  4. checkbox选中和不选中 jqu_jquery checkbox 选中不选中
  5. HashMap源码学习
  6. 工厂模式 + 反射 ?= 灵活多变的数据库
  7. 计算机多媒体设计徽章,酷毙了:Hackaday将会议徽章设计成一台可编程的电脑
  8. (转)小波的分解和重构
  9. [jquery] 删除文章的时候弹出确认窗口
  10. linux内核mtd驱动程序与sd卡驱动程序,Linux内核MTD驱动程序与SD卡驱动程序(2)
  11. 大数据测试之hadoop命令大全
  12. 如何获取最新中国县级行政区划矢量数据
  13. Flash builder 4.6下载以及安装
  14. 华为IPD全流程管理
  15. 希尔密码_密码学中的希尔密码
  16. centos 7下搭建wiki系统
  17. UPC 6615: Snuke Festival
  18. Prometheus监控 Blackbox_exporter黑盒监测
  19. 计算机之父:天才冯·诺依曼的一生!
  20. win10的怎么调计算机亮度,win10电脑亮度怎么调

热门文章

  1. script地下状态栏效果
  2. 罗永浩团队于天津成立品牌管理公司
  3. “最佳前任”!字节跳动给员工发春节红包,离职员工也有,最高6888元
  4. 京东11.11晚8开启四小时累计售出商品超1.9亿件
  5. 郭明錤:因设计复杂 苹果可能推迟至明年底生产AR/VR头盔
  6. 苹果“炸场”发布会官宣定档10月19日!终于等到你俩
  7. 西门子宣布美国充电桩扩产计划
  8. 腾讯音乐娱乐集团宣布管理层调整,着眼长远战略发展与行业生态布局
  9. 手机蓝绿厂终于转正了,已有“名分”!
  10. 坐地起价、山寨横行、人身骚扰:割韭菜的刀,还是“搬家公司”快