编写Shell管理脚本

来源:互联网 发布:seo文章原创度检测 编辑:程序博客网 时间:2024/05/29 08:33

编写Shell管理脚本
一、if语句
1,条件测试
test  测试表达式是否成立,成立结果为0
①,测试文件状态
-d 是否为目录
-e 目录或文件是否存在
-f 是否为文件
-r 当前用户是否有权限读取
-w 当前用户是否有权限写入
-x 当前用户是否可执行该文件
-L 是否为符号连接文件
②,数值比较
-eq 等于
-ne 不等于
-gt 大于
-lt 小于
-le 小于或等于
-ge 大于或等于
Equal   等于
Not Equal  不等于
Greater Than 大于
Lesser Than 小于
Lesser or Equal 小于或等于
Greater or Equal大于或等于
③,字符串比较
  = 内容相同
!= 内容不同,! 号表示相反的意思
-z 内容为空
④,条件判断
-a或&& 逻辑与
前后表达式都成立时整个测试结果才为真,否则为假
-o或|| 逻辑或
操作符两边至少一个为真时,结果为真,否则结果为假
! 逻辑否
当指定的条件不成立时,返回结果为真
2,if语句格式
①,单分支
if  条件测试命令
    then   命令序列
fi
②,双分支
if  条件测试命令
    then   命令序列1
    else   命令序列2
fi
③,多分支
if  条件测试命令1  ;  then
    命令序列1
elif  条件测试命令2  ;  then
    命令序列2
elif  ...
else
    命令序列n
fi
二、for语句(根据变量的不同取值,重复执行一组命令操作)
1,语法
for  变量名  in  取值列表
do
     命令序列
done
三、while语句(重复测试指定的条件,只要条件成立则反复执行对应的命令操作)
1,语法
while  命令或表达式
do
            命令列表
done
四、其他控制语句
1,case多分支
case  变量值  in
    模式1)
           命令序列1
           ;;
    模式2)
          命令序列2
           ;;
  ……
    * )
          默认执行的命令序列
esac
2,until循环语句
until  条件测试命令
do
      命令序列
done
3,shift迁移语句
迁移位置变量,将 $1~$9 依次向左传递
4,break语句
在for、while、until等循环语句中,用于跳出当前所在的循环体,执行循环体后的语5,continue
在for、while、until等循环语句中,用于跳过循环体内余下的语句,重新判断条件以便执行下一次循环句
五、Shell函数应用
1,语法
function 函数名 {
  命令序列
}
或者
函数名() {
  命令序列
}
2,调用函数
函数名
3,向函数内传递参数
函数名  参数1  参数2  ...

0 0
原创粉丝点击