Linux入门之Linux下的流程控制——for,if,test(Ubuntu)

shell数组

  • 对于我们所学过的数组,在Linux下同样试用,只是表达形式略微不同。
    Linux下的数组并没有编程语言中的那么规范,对于不同种类的数组并不需要像程序语言里的那样用char,int,,float分开。
    ——在Linux下定义数组只需要直接用变量+( )表示即可,格式如下:a=(a b 21 3 6) 不同元素之间用空格隔开。
    示例:
liuyan@liuyan-virtual-machine:~$ a=(1 2 3 4 5)
liuyan@liuyan-virtual-machine:~$ echo ${a[2]}
3
liuyan@liuyan-virtual-machine:~$ a[0]=hhh
liuyan@liuyan-virtual-machine:~$ echo ${a[*]}
hhh 2 3 4 5
liuyan@liuyan-virtual-machine:~$ let b=${a[1]}+${a[2]}
liuyan@liuyan-virtual-machine:~$ echo ${b}
5
liuyan@liuyan-virtual-machine:~$ 

if语句

  • if语句是常见的流程控制语句,在Linux下if语句的规则与许多程序语言的规则类似。
    规则如下
    if 判断条件;then 判断为真的执行语句;else 判断不为真的执行语句;fi
    注: 在Linux下的if语句末尾用“ fi ”表示if语句结束,各语句之间用分号隔开
    示例:
liuyan@liuyan-virtual-machine:~/Desktop/Text/shell$ if test 1 -ge 5;then echo "1>5";else echo "1<5";fi
1<5

test命令

  • test用来实现Linux里的逻辑运算
    对于test来说,它里面的运算与我们常见的运算方式有所不同,规则如下:
    -eq: 等于运算
    -ne: 不等于运算
    -lt: 小于运算
    -le: 小于等于运算
    -ge: 大于等于运算
    -gt: 大于运算
    常见参数:
-e 文件名--如果文件存在则为真
-r 文件名--果文件存在且可读则为真
-w 文件名--如果文件存在且可写则为真
-x 文件名--如果文件存在且可执行则为真
-s 文件名--如果文件存在且至少有一个字符则为真
-d 文件名--如果文件存在且为目录则为真
-f 文件名--如果文件存在且为普通文件则为真
-c 文件名--如果文件存在且为字符型特殊文件则为真
-b 文件名--如果文件存在且为块特殊文件则为真

示例:

liuyan@liuyan-virtual-machine:~/Desktop/Text/shell$ if test 1 -ge 5;then echo "1>5";else echo "1<5";fi
1<5
liuyan@liuyan-virtual-machine:~/Desktop/Text/shell$ 

for语句

  • for语句的使用规则与Python的使用规则相似,语法如下:

for 循环变量 in 对象;do 循环体;done

示例:

liuyan@liuyan-virtual-machine:~$ for i in {1..5};do echo ${i};done
1
2
3
4
5
liuyan@liuyan-virtual-machine:~$ 

发布了15 篇原创文章 · 获赞 18 · 访问量 740

猜你喜欢

转载自blog.csdn.net/qq_42452450/article/details/104579168