shell是一种脚本语言,可以使用逻辑判断、循环等语法 可以自定义函数、shell是系统命令的集合 shell脚本可以实现自动化运维,能够大大增加我们的运维效率

shell脚本结构

脚本开头以#! /bin/bash表示说明这是一个shell脚本 脚本文件的名字是以.sh结尾的,用于区分这是一个shell脚本文件 shell执行方法有两种 一种是给予权限,使用sh shell.sh或./shell.sh的方式 一种是bash shell.sh的方式 查看脚本执行过程 -x

[root@localhost src]# sh -x 1.sh 
+ echo 123
123
  • exit 查看脚本语法是否有错误 -n
[root@localhost src]# sh -n 1.sh 
1.sh: line 5: syntax error: unexpected end of file

date命令用法

date +%Y  年份  
date +%y  两位数的年份,只显示年份后面两位数。如2016,显示为16  
date +%m  月份   
date +%d  日期
date +%M  一小时的第几分钟
date +%T  带分割的时间显示
date +%s  时间戳,从1970.1.1开始到现在过了多少秒
date -d "+1 day"  一天后的这个时间点,获取将来的时间点
date -d "-1 day"  在当前时间上减一天,就是获取过去的时间
date -d "-1 month"  获取一个月前的时间戳,可以指定未来月份的时间戳
date -d "-1 min"  获取多少分钟以前的时间戳,可以指定未来多少分钟后的时间戳
date +%w  获取这周的第几天,比如获取今天的时间为5,即今天是周五
date +%W  获取今年的第几周的时间戳,如获取的时间戳为43,那么这周就是今年的第43周
date +%s -d "2018-09-06 06:52:16" 获取某个时间的多少秒的时间戳,即从1970.1.1日到现在过了多少秒。把所有时间单位都以秒计

shell脚本中的変量

当脚本中使用某个字符串較頻繁并且字符串夭度很長吋就座垓使用変量代替 使用条件語句吋,常使用変量if[$a -gt1 ]; the...;fi引用某个命令的結果吋,用変量替代n='wc - 1.txt' 写和用戸交互的脚本吋,変量也是必不可少的read -p "Input anumber: " n; echo $n  如果没写区个n,可以直接使用$REPLY 内置変量 $0, $1, $2... $0表示脚本本身, $1第一个参数, $2第二个....$#表示参数个数 .数学运算 a=1; b=2;  c=$(Sa+ $b) 或者$[$a+$b]