您的位置:首页 > 运维架构 > Shell

shell脚本介绍,date用法

2018-02-05 20:28 477 查看
十六周二次课(2月5日)

20.1 shell脚本介绍

20.2 shell脚本结构和执行

20.3 date命令用法

20.4 shell脚本中的变量

什么是shell

shell是一种脚本语言 aming_linux blog.lishiming.net

可以使用逻辑判断、循环等语法

可以自定义函数

shell是系统命令的集合

shell脚本可以实现自动化运维,能大大增加我们的运维效率

shell脚本结构和执行方法

开头需要加#!/bin/bash

以#开头的行作为解释说明

脚本的名字以.sh结尾,用于区分这是一个shell脚本

执行方法有两种

chmod +x 1.sh; ./1.sh

bash 1.sh

查看脚本执行过程 bash -x 1.sh

查看脚本是否语法错误 bash -n 1.sh

date命令的用法

date +%Y-%m-%d, date +%y-%m-%d 年月日

date +%H:%M:%S = date +%T 时间

date +%s 时间戳

date -d @1504620492

date -d “+1day” 一天后

date -d “-1 day” 一天前

date -d “-1 month” 一月前

date -d “-1 min” 一分钟前

date +%w, date +%W 星期

[root@dl-001 shell]# date       //查看当前时间
2018年 01月 20日 星期六 10:10:25 CST
[root@dl-001 shell]# cal            //查看系统日期
一月 2018
日 一 二 三 四 五 六
1  2  3  4  5  6
7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

[root@dl-001 shell]# date +%Y           //查看当前年份(四位显示)
2018
[root@dl-001 shell]# date +%y           //查看当前年份(简化显示)
18
[root@dl-001 shell]# date "+%Y-%m-%d %H:%M:%S %w"   //查看当前 年 月 日  时 分 秒 星期
2018-01-20 10:11:15 6
[root@dl-001 shell]# date +%F       //查看当前完整的年月日
2018-01-20
[root@dl-001 shell]# date +%W           //查看当前时间是一年的第几周
03
[root@dl-001 shell]# date +%T           //查看当前时间是几点
10:11:39
[root@dl-001 shell]# date +%s           //查看时间戳(显示从1970年1月1日00:00:00到目前经历的秒数)
1516414309

//时间戳的换算
[root@dl-001 shell]# date +%s -d  "2018-01-20 22:00:00"
1516456800
[root@dl-001 shell]# date -d @1516456800
2018年 01月 20日 星期六 22:00:00 CST

//打印指定日期和时间
[root@dl-001 shell]# date -d "-2 day" +%d
18
[root@dl-001 shell]# date -d "-1 year -3 month -1 day" +%Y-%m-%d
2016-10-19

//手动设置当前时间
[root@dl-001 shell]# date -s "2017-5-20 12:00:00"
2017年 05月 20日 星期六 12:00:00 CST
[root@dl-001 shell]# date
2017年 05月 20日 星期六 12:00:03 CST

//同步网络时间
[root@dl-001 shell]# yum install -y ntp
[root@dl-001 shell]# ntpdate ntp.ubuntu.com
20 Jan 10:47:42 ntpdate[8615]: step time server 91.189.89.198 offset 21163558.201100 sec
[root@dl-001 shell]# date
2018年 01月 20日 星期六 10:47:45 CST


shell脚本中的变量

当脚本中使用某个字符串较频繁并且字符串长度很长时就应该使用变量代替

使用条件语句时,常使用变量 if [ $a -gt 1 ]; then … ; fi

引用某个命令的结果时,用变量替代 n=`wc -l 1.txt`

写和用户交互的脚本时,变量也是必不可少的 read -p “Input a number: ” n; echo \$n 如果没写这个n,可以直接使用\$REPLY

内置变量 \$0, \$1, \$2… \$0表示脚本本身,\$1 第一个参数,\$2 第二个 …. \$#表示参数个数

数学运算a=1;b=2; c=\$((\$a+\$b))或者\$[\$a+\$b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐