1:shell脚本开头:
#!/bin/bash
#!/bin/sh
确认是否有 /bin/bash,如下即可
2:查看执行过程,脚本中应该有如下内容:
#set -x
如果脚本中不添加上述内容,在执行过程中bash中添加 -x也可以达到查看执行过程的效果:
3:if语句
-ge :大于等于
-eq :等于
-gt :大于
-lt :小于
-le:小于等于
-ne:不等于
格式:
(1)then不换行:
if 条件 ;then
fi
(2)then换行,条件后就不需要分号
if 条件
then
fi
注意:
4例子:
1)
#!/bin/bash
if [ $# -ge 1 ];then
systemctl status $1 > /dev/null;//$1第一参数,例httpd
//$1-n 第几个参数
//$# 参数的个数
// systemctl status $1 > /dev/null;重定向到 /dev/null
//相当于黑洞,即不屏显,空文件
if [ $? -eq 0 ];then
echo "$1 is `systemctl status $1| sed -n 3p| awk '{print $2,$3}'`"
else
echo "$1 未运行,或检查$1是否为有效的服务名称!"
fi
else
echo "没有参数"
fi
运行结果:
注意事项:
此处的反引号为取出反引号内命令运行结果;
sed -n 3p//为取文本第三行的内容
awk '{print $2,$3} '//为打印第二列和第三列的内容,并且以空格隔开。
2):
echo $? //结果为0,上一条命令执行成功,不为0执行失败。
3):
脚本执行格式正确:但命令执行失败。
$0 脚本名称