【2018.07.11学习笔记】【linux高级知识 20.1-20.4】

20.1 shell脚本介绍

一、shell脚本语言是linux系统的系统命令的一个集合:他包含了有逻辑判断、循环语句和自定义的函数等。

二、shell脚本用来实现系统管理的自动化运维,提升管理效率。例如:要部署上百台机器的时候,就可使用脚本文件同时进行操做,大大提升效率。

三、shell脚本编写是运维工做的重点,也是工做应聘的必备熟练的条件:熟练掌握必需要多练习多看脚本代码,对脚本的解决问题的思路要理解透彻。

20.2 shell脚本结构和执行

linux中的shell脚本,第一行固定文件头:linux

#!/bin/bash   //指定下面的命令集合经过哪一个解释器执行

若是shell脚本文件拥有x执行权限,加上了指定解释器文件头,就可以直接执行shell脚本文件,不用在前面使用命令来执行shell

chmod a+x 123.sh   //加上x执行权限
./123.sh  //直接输入文件名,回车执行便可。不用 sh命令或者 /bin/bash命令

若是不加指定解释器的文件头:#!/bin/bash,就须要使用命令来执行shell脚本:bash

sh 123.sh              //  /bin/sh命令文件实际上是软连接至 /bin/bash
/bin/bash 123.sh

shell脚本中除了第一行外的,其余以#号开头的行,表明解释说明,不会被解释器执行运维

bash -x 123.sh  //-x选项 查看执行过程  ,执行过程显示中,+号后面的语句是:执行过程,按执行顺序显示。
bash -n 123.sh  //-n选项 查看是否有语法错误

20.3 date命令用法

date命令:显示系统当前日期和时间,shell脚本中做用很大。函数

date命令在shell脚本中至关重要,常常会使用到date命令来进行对文件的操做:如日志文件等。日志

LANG=en  //date命令显示的时间就是英文的
LANG=zh_CN.UTF-8 //date命令显示的时间是中文的

date命令有如下经常使用的格式与选项:code

date +%Y  //显示年份:2018
date +%m  //显示月份:07
date +%d  //显示日:12
date +%M  //显示分钟:52
date +%D  //显示年月日:09/09/17
date +%F  //显示年月日:2017-09-09
date +%h  //显示英文的月份:Sep
date +%H  //显示小时:06
date +%S  //显示秒:36
date +%s  //显示时间戳:1504811139,距离1970.01.01过去多少秒
date +%T  //显示时间:06:30:20
date +%w  //显示星期
date +%W  //显示今年第几周:36
cal       //显示日历

date命令指定日期:字符串

date -d "+1 day"    //一天后的日期; -d选项,计算时间日期
date -d "-1 day" +%F  //昨天的日期
date -d "-1 month" +%F  //上月的日期
date -d "+1 year" +%F  //明年的日期
date -d "+1 hour" +%T  //下个小时
date -d @1504911154 //查看时间戳对应的日期时间
date +%s -d "2017-09-08 06:20:19"  //查看日期时间对应的时间戳

20.4 shell脚本中的变量

shell脚本中的变量:是某个字符串使用频繁,或者字符串长度长,可使用变量才代替,提升代码编写的效率。部署

在条件语句中常使用到变量:input

if [$a -gt 10];then 语句; fi  //a就是变量

引用命令结果时用变量:

n='wc -l 1.txt' //wc统计行数命令的结果,赋值给变量n

用户交互脚本中,使用变量:

read -p "input a number : " n; echo $n   //把输入的数值,赋值给变量n

系统的内置变量:

$0,$1,$2,$3等   //$0表示脚本自己,$一、$2表明命令的第1个参数、第2个参数,如此类推。$#表明参数个数

数序运算中使用变量:

a=1
b=2
c=$(($a+$b))  //c=$[$a+$b] 这种写法也行
相关文章
相关标签/搜索