码迷,mamicode.com
首页 > 系统相关 > 详细

shell脚本语法

时间:2020-04-01 19:28:34      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:data-   case语句   img   文件   until   直接   test   条件   结果   

shell脚本语法

条件测试test

数值测试

-eq  等于则为真

-ne  不等于则为真

-gt  大于则为真

-ge  大于等于则为真

-lt  小于则为真

-le  小于等于则为真

例:

技术图片

 

 

结果:

 

技术图片

 

 

 test可以用[]来代替,但要注意”[“后面和”]“前面要有空格

 

 

字符串测试

=  等于则为真

!=  不等于则为真

-z  字符串的长度为零则为真

-n  字符串的长度不为零则为真

文件测试:

-e  如果文件存在则为真

-r  如果文件存在且可读则为真

-w  如果文件存在且可写则为真

-x  如果文件存在且可执行则为真

-s  如果文件存在且至少有一个字符则为真

-d  如果文件存在且是目录则为真

-f  如果文件存在且是普通文件则为真

-c  如果文件存在且为字符型特殊文件则为真

 

流程控制:

条件分支if else

语法:

if 条件

then

  符合条件执行的命令

else

  不符合条件执行的命令

fi    //以此标志条件分支结束

如果为假没有要执行的命令,则不用写else,如果有多个不同的且不同时满足时,要用到elif

写成一行:if [条件];then 执行命令;fi

语法:

 

if 条件1

 

then

 

  符合条件1执行的命令

elif 条件2

then

  符合条件2执行命令

 

else

 

  不符合以上所有条件执行的命令

 

fi

 

for循环:

 

语法:

for i in item1 item2 ... itemn        或    for((i=1;i<10;i++))

do

  执行命令

done

 

while循环

语法:

while 条件        例 while(( $i<=5 ))

do

  执行命令

done  

死循环:

while : 或  while true

 

until循环

until 条件

do

  执行条件

done

  

case语句

case 值 in

  值1)

    执行命令

  ;;

  值2)

    执行命令

  ;;

esac

 

 

跳出循环:break跳出整个循环  continue跳出当前循环

 

函数:

定义函数:

[ function ] 函数名()

{

  函数内容

}

执行函数:直接写函数名,注意shell中函数调用不写括号

函数要先定义后执行,可以用$1,$2直接传入参数

 

shell脚本语法

标签:data-   case语句   img   文件   until   直接   test   条件   结果   

原文地址:https://www.cnblogs.com/gengzida/p/12614600.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!