本文共 2244 字,大约阅读时间需要 7 分钟。
shell是一种脚本语言, shell是系统命令的集合
1、可以使用逻辑判断、循环等语法;跟C语言有点像,但有本质的区别。2、可以自定义函数;定义函数是为了减少我们的重复代码。3、它可以实现自动化运维,可以批量同时执行,能大大增加我们的运维效率,;要想学好写好shell就要不断的去练习。1、在开头需要加
#!/bin/bash
指定用bash解释器来执行,以#开头行进行解释说明。脚本名以.sh结尾,用于区分这是一个shell脚本。
2、执行shell脚本方法有两种:[root@riven ~]# chmod a+x 1.sh #给脚本执行权限[root@riven ~]# ./1.sh #执行权限后用./直接执行[root@riven ~]# bash 1.sh #直接用bash执行12233...
[root@riven ~]# bash -n 1.sh # -n 查看脚本是不是语法错误[root@riven ~]# bash -x 1.sh #-x 查看脚本的执行过程+ echo 12233...12233...+ echo 111[root@riven ~]#
三、data命令的用法
1、直接打data命令它会显示系统的日期和时间。2、data命令在shell里面非常有用,它可以用来标记时间。标记方法:[root@riven ~]# date +%Y #年2018[root@riven ~]# date +%m #月07[root@riven ~]# date +%d #日13[root@riven ~]# date +%M #分钟58[root@riven ~]# date +%y #两位数的年18[root@riven ~]# date +%D #带/的年月日07/14/18[root@riven ~]# date +%Y%m%d 20180714[root@riven ~]# date +%F #带横线的年月日2018-07-14[root@riven ~]# date +%H #小时00[root@riven ~]# date +%S #秒38[root@riven ~]# date +%s #时间戳,距离1970年0点0分0秒过去多少钞[root@riven ~]# date +%T #当前时间00:04:24[root@riven ~]# date +%H%M%S #时分秒000554[root@riven ~]# date +%H:%M:%S00:06:02[root@riven ~]# cal #显示最近一个月的日历 七月 2018 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 1415 16 17 18 19 20 2122 23 24 25 26 27 2829 30 31[root@riven ~]# date -d "-1 day" +%F #前一天2018-07-13[root@riven ~]# date -d "+1 day" +%F #后一天2018-07-15[root@riven ~]# date -d "+1 year" +%F #后一年2019-07-14[root@riven ~]# date -d "-1 year" +%F #前年2017-07-14[root@riven ~]# date -d "-1 month" +%F #上个月2018-06-14[root@riven ~]# date -d "+1 month" +%F #下个月2018-08-14[root@riven ~]# date -d "+1 hour" +%T #后一个小时01:16:58[root@riven ~]# date -d "-1 hour" +%T #前一个小时23:17:04[root@riven ~]# date -d @16032303211 #时间戳转成具体时间2478年 01月 16日 星期日 09:33:31 CST[root@riven ~]# date +%s -d "2018-09-09 00:00:00"#具体时间转换成时间戳1536422400[root@riven ~]#
1、当脚本中使用某个字符串较频繁并且字符串长度很长时就应该使用变量代替。
2、使用条件语句时,常使用的变量:if [$a -gt 1];then ...;fi3、引用某个命令的结果时,用变量代替:n='wc -| 1.txt'4、写和用户交互的脚本时,变量也是必不可少的read -p "Input a number: " n; echo $n #如果没写这个n,可以直接使用$REPLY5、内置变量 $0, $1, $2… $0表示脚本本身,$1 第一个参数,$2 第二个 …. $#表示参数个数6、数学运算a=1;b=2; c=$(($a+$b))或者$[$a+$b]转载于:https://blog.51cto.com/10690709/2141961