linux的shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变量
2018-02-05 19:32
1261 查看
Shell脚本介绍
shell是一种脚本语言可以使用逻辑判断、循环等语法
可以自定义函数
shell是系统命令的集合
shell脚本可以实现自动化运维,能大大增加我们的运维效率
Shell脚本结构和执行
开头需要加#!/bin/bash以#开头的行作为解释说明
脚本的名字以.sh结尾,用于区分这是一个shell脚本
执行方法有两种,加执行权限chmod +x 1.sh;
1. ./1.sh
2. /root/shell/01.sh (绝对路径执行)
执行脚本bash 1.sh
查看脚本执行过程 bash -x 1.sh
查看脚本是否语法错误 bash -n 1.sh
练习一个脚本做测试:
[root@garytao-01 ~]# mkdir shell [root@garytao-01 ~]# cd shell/ [root@garytao-01 shell]# ls [root@garytao-01 shell]# vi 01.sh [root@garytao-01 shell]# bash 01.sh 123 10:57:41 up 9 min, 1 user, load average: 0.00, 0.13, 0.13 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 172.16.111.1 10:49 5.00s 0.03s 0.01s w 01.sh [root@garytao-01 shell]# cat 01.sh #!/bin/bash //第一行这个如果在本面执行可不写,执行脚本时加/bin/bsah就可以 echo "123" w ls [root@garytao-01 shell]# chmod a+x 01.sh [root@garytao-01 shell]# ./01.sh 123 10:58:12 up 9 min, 1 user, load average: 0.00, 0.11, 0.12 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 172.16.111.1 10:49 4.00s 0.02s 0.00s /bin/bash ./01.sh 01.sh [root@garytao-01 shell]# ls -l /bin/bash -rwxr-xr-x. 1 root root 960392 8月 3 2016 /bin/bash [root@garytao-01 shell]# ls -l /bin/sh lrwxrwxrwx. 1 root root 4 10月 17 05:04 /bin/sh -> bash [root@garytao-01 shell]# /bin/bash 01.sh 123 11:02:12 up 13 min, 1 user, load average: 0.00, 0.05, 0.10 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 172.16.111.1 10:49 4.00s 0.03s 0.00s w 01.sh #查看脚本执行过程 [root@garytao-01 shell]# bash -x 01.sh + echo 123 123 + w 11:12:04 up 23 min, 1 user, load average: 0.00, 0.03, 0.07 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 172.16.111.1 10:49 4.00s 0.04s 0.01s w + ls 01.sh #检查脚本语法错误 [root@garytao-01 shell]# bash -n 01.sh [root@garytao-01 shell]# /root/shell/01.sh 123 11:23:45 up 35 min, 1 user, load average: 0.05, 0.05, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 172.16.111.1 10:49 1.00s 0.05s 0.00s /bin/bash /root/shell/01.sh 01.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@garytao-01 ]# date 2018年 02月 03日 星期六 13:41:51 CST #把date命令显示成英文 [root@garytao-01 ]# LANG=en [root@garytao-01 ]# date Sat Feb 3 13:45:14 CST 2018 #年 [root@garytao-01 ~]# date +%Y 2018 #两位的年 [root@garytao-01 ~]# date +%y 18 #月份 [root@garytao-01 ~]# date +%m 02 #分钟 [root@garytao-01 ~]# date +%M 47 #日期 [root@garytao-01 ~]# date +%d 03 [root@garytao-01 ~]# date +%D 02/03/18 [root@garytao-01 ~]# date +%Y%m%d 20180203 [root@garytao-01 ~]# date +%F 2018-02-03 #小时 [root@garytao-01 ~]# date +%H 13 #秒 [root@garytao-01 ~]# date +%S 41 #时间戳(距离19700101过去多少秒) [root@garytao-01 ~]# date +%s 1517636984 [root@garytao-01 ~]# date -d @1517637599 Sat Feb 3 13:59:59 CST 2018 [root@garytao-01 ~]# date +%s -d "2018-02-03 13:59:59" 1517637599 #时间 [root@garytao-01 ~]# date +%T 13:52:05 [root@garytao-01 ~]# date +%H:%M:%S 13:53:17 #英文的月份 [root@garytao-01 ~]# date +%h Feb #星期几 [root@garytao-01 ~]# date +%w 6 #今年的第几周 [root@garytao-01 ~]# date +%W 05 #显示日历 [root@garytao-01 ~]# cal February 2018 Su Mo Tu We Th Fr Sa 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 [root@garytao-01 ~]# date -d "+1 day" Sun Feb 4 14:02:19 CST 2018 [root@garytao-01 ~]# date -d "-1 day" Fri Feb 2 13:57:49 CST 2018 [root@garytao-01 ~]# date -d "-1 day" +%F 2018-02-02 [root@garytao-01 ~]# date -d "-1 month" +%F 2018-01-03 [root@garytao-01 ~]# date -d "-1 year" +%F 2017-02-03 [root@garytao-01 ~]# date -d "-1 hour" +%T 12:59:07
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]
相关文章推荐
- linux学习第六十三篇:Shell脚本介绍,Shell脚本结构和执行,date命令用法,Shell脚本中的变量
- shell脚本介绍、脚本结构和执行、date命令用法、脚本中的变量
- shell脚本介绍 Shell脚本结构和执行 date命令用法 Shell脚本中的变量
- shell脚本介绍、结构和执行、date命令用法、shell脚本中的变量
- 【shell编程】shell脚本介绍、shell脚本结构和执行、date命令用法和shell脚本中的变量
- shell脚本介绍shell脚本结构和执行date命令用法shell脚本中的变量
- shell脚本介绍shell脚本结构和执行date命令用法shell脚本中的变量
- shell脚本介绍,shell脚本结构和执行方式,date命令的用法,shell脚本中的变量简介
- shell脚本介绍-脚本结构和执行-date命令用法-脚本中的变量
- shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变量
- 20.1 shell脚本介绍 20.2 shell脚本结构和执行 20.3 date命令用法 20.4 shell脚本中的变量
- 20.1 shell脚本介绍 20.2 shell脚本结构和执行 20.3 date命令用法 20.4 shell脚本中的变量
- shell脚本介绍,shell脚本结构和执行,date命令用法,shell脚本中的变量
- shell脚本介绍 shell脚本结构和执行 date命令用法 shell脚本中的变量
- 20.1 Shell脚本介绍;20.2 Shell脚本结构和执行;20.3 date命令用法;20.4 Shell脚本中的变量
- shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变量
- Shell脚本(脚本结构和执行方法,date命令用法,脚本中的变量)
- 十六周二次课 2018.02.05 shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变 bbc6 量