本文内容来自对《朱有鹏嵌入式linux核心课程》学习总结
1. 类似 linux 终端的行缓冲命令行
(1)行缓冲的意思就是:当我们向终端命令行输入命令的时候,这些命令没有立即被系统识别,而是被缓冲到一个缓存区(也就是系统认为我们还没有输入完),当我们按下回车键(换行)后系统就认为我们输入完了,然后将缓冲区中所有刚才输入的作为命令拿去分析处理。
(2)linux 终端设计有3种缓冲机制:无缓冲,行缓冲,全缓冲。
2. 有些命令有简化的别名
(1)譬如 printenv 命令可以简化为 print,譬如 setenv 可以简化为 set。
3. 有些命令会带参数(注意格式是固定的)
(1)uboot 的每个命令都有事先规定好的各种格式。有些命令就是不带参数的,譬如 printenv/print 命令:有些命令带可选的参数(可以带也可以不带,当然带不带参数的执行结果是不同的);有些命令带必须的参数(譬如 setenv/set 命令)
4. 命令中的特殊符号(譬如单引号)
(1)uboot 的有些命令带的参数非常长,为了告诉 uboot 这个非常长而且中间有好多个空格的东西是给他的一个整个参数,所以用单引号将这个很长且中间有空格隔开的参数引起来。
(2)别的符号也许也有,而且 有特定的意义。当碰到 uboot 的命令行有特殊符号时要注意不是弄错了,而是可能有特别的含义。
5. 有些命令是一个命令族(譬如 movi)
(1)print 命令不用带参数,作用是打印出系统中所有的环境变量。
(2)环境变量就好像程序的全局变量一样。程序中任何地方都 可以根据需要去调用或者更改环境变量(一般都是调用),环境变量和全局变量不同之处在于:全局变量的生命周期是在程序的一次运行当中,开始运行时诞生程序结束时死亡,下次运行程序时从头开始;但是环境变量被存储在 Flash 的另一块专门区域( Flash 上有一个环境变量分区),一旦我们在程序中保存了该环境变量,那么下镒开机时该环境变量的值将维持上一次更改保存后的值。