uboot常用命令与环境变量
uboot启动后大部分时间和工作都是在shell下完成的,譬如uboot要部署(就是烧录)系统要在shell下输命令、要设置环境变量也得在命令行地下,要启动内核也要在命令行底下敲命令。命令就是uboot的shell中可以识别的各种命令。
uboot的有些命令带的参数非常长,为了告诉uboot这个非常长而且中间有好多个空格的东西是给他的一整个参数,所以用单引号将这个很长且中间有空格隔开的参数引起来。
序号 | 命令行 | 备注 |
1 | printenv/print | 打印出系统所有的环境变量 |
2 | setenv/set name value | 设置更改环境变量 ,name为环境变量名,value为对该环境变量设置的内容 |
3 | saveenv/save | 保存环境变量的更改,下次重启仍存在 |
4 | ping pingAddress | 测试对应地址下的网络链接是否通 |
5 | tftp [loadaddress] [bootfilename] | 将bootfile文件下载到指定的loadaddress地址中 |
6 | movi init | 查看内存信息 |
movi read {u-boot / kernel} {addr} | 从内存中读取数据 | |
movi write {fwbl1 / u-boot / kernel} {addr} | 写数据到内存中 | |
movi read rootfs {addr} [bytes(hex)] | 按某个字节大小读取根文件系统中的数据 | |
movi write rootfs {addr} [bytes(hex)] | 按某个字节大小读取根文件系统中的数据 | |
7 | mm [.b, .w, .l] address | 逐个单元的修改内存中的某一块数据 |
md [.b, .w, .l] address | 显示内存中的内容 | |
8 | bootm | 去某个地址执行应用(可以bootm内核或者镜像) |
9 | go | 直接去某个地址执行 |
命令演示:
1、printenv/print
print命令不用带参数,作用是打印出系统中所有的环境变量。
环境变量就好像程序的全局变量一样。程序中任何地方都可以根据需要去调用或者更改环境变量(一般都是调用),环境变量和全局变量不同之处在于:全局变量的生命周期是在程序的一次运行当中,开始运行时诞生程序结束时死亡,下次运行程序时从头开始;但是环境变量被存储在Flash的另一块专门区域(Flash上有一个环境变量分区),一旦我们在程序中保存了该环境变量,那么下次开机时该环境变量的值将维持上一次更改保存后的值。
2、setenv/set
(1)新建一个环境变量,使用set var value
(2)更改一个环境变量,使用set var value
(3)删除一个环境变量,使用set var
3、saveenv/save
更详细的命令见:https://blog.csdn.net/qq_42826337/article/details/104931732