shell--分支选择-循环语句

这篇博客详细介绍了在Shell脚本中如何进行分支选择和循环语句的使用,包括httpd服务的控制、for循环、while循环、until循环的常见用法以及特殊用法。同时讲解了break和continue在循环中的应用,并提到了定义脚本退出状态码的重要性。重点内容包括99乘法表的实现。
摘要由CSDN通过智能技术生成
分支选择
//case支持glob风格的通配符:
    *           //任意长度任意字符
    ?           //任意单个字符
    []          //指字范围内的任意单个字符
    abc|bcd     //abc或bcd
  • 控制服务httpd
模板
[root@ansible ~]# cat httpd 
#!/bin/bash

case $1 in
     "hai")
	echo "tom"
	;;
     "nihao")
	echo "2020"
	;;
     *)
	echo "Usage: service $0 hai|nihao"
	;;
esac
[root@ansible ~]# ./httpd hai
tom
[root@ansible ~]# ./httpd nihao
2020
[root@ansible ~]# ./httpd hhjskshd
Usage: service ./httpd hai|nihao
  • 启动、停止、重启httpd服务
[root@ansible ~]# cat httpd
#!/bin/bash
# chkcongfig: 30 70  第一个数启动的顺序,第二个数是结束的顺序,两个数字和为100
# description: 描述信息

case $1 in
    "start")
        /usr/sbin/httpd
	    ;;
    "stop")
	    /usr/sbin/httpd  stop
	    ;;
    "restart")
	    /usr/sbin/httpd  stop
	    /usr/sbin/httpd
	    ;;
    "status")
	    status=$(ps -ef|grep "httpd"|grep -Ev "grep|$0 status"|wc -l)
	
        if [ $status -gt 0 ];then
            echo "httpd is running."
	    else
            echo "httpd is dead."
        fi
	    ;;
    *)
        echo "Usage: service $0 hai|nihao"
        ;; 
esac

[root@ansible ~]# ./httpd start
httpd (pid 999) already running
  • 要控制httpd服务得放到对应的位置里/etc/init.d/httpd
[root@ansible ~]# cp httpd /etc/init.d/httpd
[root@ansible ~]# service httpd status
httpd is running.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值