shell在uboot中的应用,以及shell的简单语法

1、shell的知识总结
1.1#!/bin/sh 程序开始第一行为指定解释器
#!/bin/sh
#井号后为注释
echo “hello world”
2、shell变量的定义和赋值,引用
例:string=“hello world”
echo $string

shell的变量没有类型,shell语言为弱类型语言,不同于C/C++等强类型语言。
shell变量赋值时=前后不能有空格
例:i=1
" /$"双引号中如果要打印转义字符,需要在符号前加上反斜杠/
’ 单 引 号 则 会 把 引 号 内 的 所 有 符 号 打 印 出 来 变 量 引 用 时 需 要 加 上 ’单引号则会把引号内的所有符号打印出来 变量引用时需要加上

3、shell判断语句
if [ ]; then [ ]中括号前后需要加空格

else

fi
if[ ]中字符判断条件
[ “str1”=“str2” ] 判断字符串相等
[ $tring -z ]判断字符串是不是空
[ a.txt -f ]判断a.txt是否存在
[ dir -d ]判断目录是否存在
if[ ]中数字判断条件
if[ $num1 -eq $num2 ]
=: -eq
>: -gt ≥: -ge
<: -lt ≤: -le

4、shell如何调用linux中的命令
例如:‘pwd’使用反引号,调用linux中的命令

shell的循环结构
4.1 for循环
for i in 1 2 3 4 5
do
echo $i
done

4.2 while循环
i=0
j=10
while [ $i -lt $j ]
do
echo i i = ( ( i i=(( ii=((i+1)) #i++
done

5、echo指令创建和追加输入文件
#例如创建一个a.txt文件,并在文件中写入字符
echo “hello world” > a.txt
>代表创建文件
echo在已有文件中添加字符
echo “hello world” >> a.txt
>>代表在已有的文件中追加字符.

6、case语句
#!/bin/sh
i=0
case $i in case中的数值 $i引用变量,用in结尾
0) echo “hello”;; case的值: 0)需要用右括号,且结尾是两个分号

  1. echo “die”;;
    esac
    case语句不需要break

7、shell语句的传参
使用$# $0…进行传参
例:echo $# $0 $1 $2 $3
执行程序时输入:./hello.sh aa bb cc
会打印出 3 ./hello.sh aa bb cc $#为传参的个数,$0为程序名字,$0,$1,$2为传入的参数

7.1 shift可以改变传入的参数
例:echo $# $0 $1 $2 $3
shift
echo $# $0 $1 $2 $3
执行程序时输入:./hello.sh aa bb cc
会打印出 3 ./hello_world.sh aa bb cc
2 ./hello_world.sh bb cc
shift会把一个参数移除

shell的break和C语言的break不同,
shell的break是跳出while循环,不是跳出case
C语言中的brake则是跳出for一次循环,或者跳出case。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值