读书频道 > 系统 > linux > 深度实践嵌入式Linux系统移植
2.2.2 环境变量相关命令
2015-07-10 16:25:37     我来说两句 
收藏    我要投稿   
随着物联网时代的到来,市场对各类智能设备的需求也日渐高涨。智能设备的核心技术是集成电路芯片和嵌入操作系统,而嵌入式操作系统更可以称为是智能设备的灵魂。多年来,Linux系统因为其开源免费、安全稳定、社区  立即去当当网订购

和shell类似,u-boot也有环境变量。u-boot默认的一些环境变量如表2-4所示。


 

要查看板子上的环境变量的值可使用printenv命令,例如:

My2440# printenv
bootdelay=1
baudrate=115200
ethaddr=08:08:11:18:12:27
ipaddr=192.168.1.230
serverip=192.168.1.5
gatewayip=192.168.1.1
netmask=255.255.255.0
……

没有设置的环境变量不会打印出来。也可以自己定义环境变量,并在命令中使用${环境变量}来调用它,也可以删除这个环境变量。设置环境变量的命令是setenv,其格式为:

setenv name value

其中: 

第1个参数是环境变量的名称。

第2个参数是要设置的值,如果没有第2个参数,则表示删除这个环境变量。

例如,将“bootdelay”参数删除,再设置,最后在一个命令串中调用:

My2440# printenv bootdelay
1
My2440# setenv bootdelay
My2440# printenv bootdelay
## Error: "bootdelay" not defined
My2440# setenv bootdelay "I am bootdelay "
My2440# printenv bootdelay
bootdelay =I am bootdelay
My2440# echo ${tekkaman}
I am bootdelay

由上面的测试可以看出,环境变量没有类型,它们本质上都是字符串。

环境变量一旦设置,就只保存在内存中,如果要将它保存到存放环境变量的固态存储器中,则使用saveenv。

如果在启动时看到u-boot打印出:“Warning - bad CRC, using default environment”,则说明u-boot没有在存放环境变量的固态存储器中找到有效的环境变量,只好使用编译时定义的默认环境变量。如果u-boot存放环境变量的固态存储器的驱动没问题,那么只要运行 saveenv就可以把默认环境变量写入固态存储器,下次启动就不会有这个警告了。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:2.2.1 获取帮助
下一篇:2.2.3 网络命令
相关文章
图文推荐
3.3.6 GNOME的软件管
3.3.5 GNOME的文件管
3.3.4 GNOME的窗口管
3.3.3 收藏夹和快捷
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站