Linux Shell笔记

最近在阅读u-boot,里面有大量的shell指令,在这里做下笔记。

(1)数值比较:

大于:gt

小于:lt

等于:eq

不等于:ne

小于等于:le

大于等于:ge

(2)条件

条件语句位于[ ]之内,且格式为 [ xxxxx ],xxxxx前后的空格不可以省略。

两种常用格式:

[ xxxx ] || yyyy; //如果xxxx为假则执行yyyy

[ xxxx ] && yyyy; //如果xxxx为真则执行yyyy

(3)传参

$#相当于C的argc

$0相当于C的argv[0]

$1相当于C的argv[1]

依此类推

(4)字符串比较

空串:-z

相等:=

不等:!=

非空:-n

(5)逻辑预算

逻辑与:-a

逻辑或:-o

(6)添加到文件

新建文件:>

追加文件:>>

(7)数组元素选择初始化: 

int array[] = {[3] = 5, [9] = 2};

(8)指定代码段

uboot中命令代码位于段.u_boot_cmd内,如果用汇编可以轻易的指定代码段,但是如果使用C语言指定代码需要如下处理

__attribute__((unused, section(".u_boot_cmd"),  aligned(4)))

使用__attribute__代码属性来指定代码的段位置。

你可能感兴趣的:(嵌入式开发)