嵌入式linux开发中一些有用的shell脚本收集整理
来源:互联网 发布:js格式化时间戳format 编辑:程序博客网 时间:2024/05/17 03:43
应用场景:有的时候,我们想获取某个文件中的一部分,比如我们想从一个完整的flash image文件中只抽取kernel,或者file system。
特点:参数支持16进制,这对嵌入式开发很重要。
用dd命令扩展某个文件到指定的长度,然后用cat命令把两个文件连起来。
应用场景:把bootloader,kernel,file system连起来生成一个最终的image文件。
弱点:dd命令扩展某个文件的时候貌似不可以指定填充的内容。
示例:
xxd命令的使用:
应用场景:有的时候,你需要通过某种bus加载一个image文件到系统的DSP或者某种控制器里面,image本身可以放在文件系统里面,但有的时候,你可以直接把image编进代码里。xxd可以帮你把image文件转成一个数组,并且还会定义一个与image length有关的变量。
示例代码:
特点:参数支持16进制,这对嵌入式开发很重要。
- #! /bin/sh
- #get a piece of content from a file.
- #$1:file name.
- #$2:offset of the file.[in hexdecimal]
- #$3:length of the piece of file you want to get.[in hexdecimal]
- #$4:the output piece of file name.
- #example:./get_piece_of_file.sh xxx_2M_FLASH.bin 0x1f0000 0x10000 config.bin
- OFFSET=`echo $(($2))`
- LEN=`echo $(($3))`
- dd if=$1 of=$4 bs=1 skip=$OFFSET count=$LEN
用dd命令扩展某个文件到指定的长度,然后用cat命令把两个文件连起来。
应用场景:把bootloader,kernel,file system连起来生成一个最终的image文件。
弱点:dd命令扩展某个文件的时候貌似不可以指定填充的内容。
示例:
- dd if=$BOOTLOADER_FILE_NAME of=bootloader_extend bs=$FS_OFFSET_DEC count=1 conv=sync
- cat bootloader_extend $FS_FILE_NAME >bootloader_fs
xxd命令的使用:
应用场景:有的时候,你需要通过某种bus加载一个image文件到系统的DSP或者某种控制器里面,image本身可以放在文件系统里面,但有的时候,你可以直接把image编进代码里。xxd可以帮你把image文件转成一个数组,并且还会定义一个与image length有关的变量。
示例代码:
- echo "you need load me to xxx chip by xxx bus and i will run in xxx chip" >xxx_chip_firmware.bin
- xxd -i xxx_chip_firmware.bin xxx_chip_firmware.bin.h
0 0
- 嵌入式linux开发中一些有用的shell脚本收集整理
- 收集整理的ARM嵌入式linux开发入门视频教程
- 移动开发中有用的一些第三方网站整理
- 收集一些android开发有用的资料
- 收集整理的一些有用的SQL/T-SQL语句!
- Linux下一些有用的Shell命令
- 一些有用的脚本
- IOS一些有用的收集
- CSDN中收集到的一些有用的东东..
- 一些有用的嵌入式站点
- 一些很有用的BAT命令[不断收集中..]
- 一个有用的shell脚本
- IOS开发中一些有用的快捷键
- 【Linux】一些好玩的shell脚本
- Linux 有用的脚本
- 对iOS开发有用的一些自动化处理脚本
- 对iOS开发有用的一些自动化处理脚本
- ios开发过程中一些常用地址收集整理
- 用DWR comet+Spring实现服务器推送的例子--网页聊天室
- Oracle EBS 11.5.10的下载方法
- 淘宝开放平台的盈利模式
- 静态和非静态(C#)
- 孤儿进程和僵尸进程
- 嵌入式linux开发中一些有用的shell脚本收集整理
- 改主机名后Oracle OEM无法使用处理方法
- CSS自动竖向排列的布局方法
- 用java模拟银行业务调度系统
- android JIN使用流程
- Python 命令行参数和getopt模块详解
- Spring3.2+hibernate4整合报错 NoSuchMethodError:openSession()解决办法
- 一步步学习java并发编程模式之Active Object模式(三)java实现active object
- zoj 2966 Build The Electric System(并查集)