标签:例子 shell 创建 习惯 执行方法 脚本 管理员 示例 帮助
12.1脚本shell脚本并不能作为正式的变成语言,因为它是在linux的shell中运行的,所以称为shell脚本。shell脚本就是一些命令的集合。把所有的操作都记录到一个文档中,然后去调用文档中的命令,这样一部操作就可以完成。这个文档就是shell脚本,只是这个shell脚本有它的特殊的格式。
shell脚本能帮助我们很方便地管理服务器,因为我们可以指定一个任务计划,定时去执行某个shell脚本以满足需求。
凡是自定义的脚本都放到/user/local/sbin/目录下。这样做的目的是:一来可以更好地管理文档;二来是以后接管你的管理员都知道自定义脚本放在哪里,方便维护。
12.1.1 shell脚本的创建和执行
编写第一个shell脚本
[root@localhost ~]# cd /usr/local/sbin [root@localhost sbin]# vim first.sh
#! /bin/bash ##This is my first shell script ## Writen by Aming 2017-02-23. date s is my first shell script ## Writen by Aming 2017-02-23. date echo "Hello world"
shell脚本通常都以.sh为后缀名。这并不是说不加.sh的脚本就不能执行,只是大家的一个习惯而已。本例中,脚本文件first.sh的第1行要以#! /bin/bash开头,表示该文件使用的是bash语法。如果不设置改行,你的shell脚本也能执行,但是不符合规范。#表示注释,后面跟一些该脚本的相关注释内容。因为随着工作时间的逐渐过渡,写的shell脚本也会越来越多,如果有一天你回头查看自己写过的某个脚本,很有可能忘记改脚本是用来干什么的以及什么时候写的。所以写上注释是有必要的。别的管理员也可以查看你的脚本。
执行这个脚本,如下所示:
[root@localhost sbin]# sh first.sh 2018年 07月 08日 星期日 20:03:59 CST Hello world
shell另外的一种执行方法,如下所示:
[root@localhost sbin]# ./first.sh -bash: ./first.sh: 权限不够 [root@localhost sbin]# chmod +x first.sh [root@localhost sbin]# ./first.sh 2018年 07月 08日 星期日 20:21:46 CST Hello world
使用该方法运行shell脚本的前提是脚本本身有执行权限,所以需要给脚本加一个x权限。另外,使用sh命令执行一个shell脚本时,可以加-x选项查看这个脚本执行过程,这样有利于我们调试这个脚本。如下所示:
[root@localhost sbin]# sh -x first.sh + date 2018年 07月 08日 星期日 20:25:35 CST + echo 'Hello world' Hello world
date命令
用法:
date +%Y:表示意思为数字格式打印年份。
date +%y:表示意思为数字格式打印年份。
date +%m:表示月份。
date +%d:表示日期。
date +%H:表示小时。
date +%M:表示分钟。
date +%S:秒。
date +%w:表示星期。结果显示0则表示周日。
列举几个例子date命令的用法,示例如下:
[root@localhost sbin]# date +"%Y-%m-%d %H:%M:%S" 2018-07-08 20:36:12
前一天的日期,如下所示:
[root@localhost sbin]# date -d "-1 day" +%d 07
一小时前,如下所示:
[root@localhost sbin]# date -d "-1 hour" +%H 19
一分钟前,如下所示:
[root@localhost sbin]# date -d "-1 min" +%M 39
12.2 shell脚本中的变量
在shell脚本中使用变量回事我们的脚本更加专业,更像是一门语言。
定义变量的格式为:“变量名=变量的值”。
在脚本中引用变量时需要加上符号$,这跟前面介绍的在shell中自定义变量是一致的。
标签:例子 shell 创建 习惯 执行方法 脚本 管理员 示例 帮助
原文地址:http://blog.51cto.com/13107353/2138884