shell脚本以文件名.sh结尾
vi 1.sh 创建
#!/bin/bash
##this is a test shell script
##Written by xingzhihao 2018-09-26
echo ”123456.”
Touch gyj.111
date
bash 1.sh 运行
./1.sh 运行
sh -x 1.sh 查询shell执行过程
date 输出时间
cal 输出日历
cal -y 输出一年的日历
echo $LANG
LANG=en
date+%y 年份
date+%m 月份
date+%d 日
date+%D 年月日
date+%h 月
date+%S 秒
date+%T 时间
date+%H-%M-%s
date+%F 完整日期
date+%W (今年第几周)
bc 计算器
安装:yum install bc
Ctrk + d退出
date -d “.2day”+%F
vi 2.sh
#!/bin/bash
d=’date +%T’
logname=”$d”.log
touch /tmp/$logname

交互式shell脚本
vi 3.sh
read -p “suiyi:” n #suiyi 可替换任意字符,n后可添加其它字母,-t 超时间
echo $n #如果上一行还有其他字母则需要多加一行echo $

简单的shell脚本
vi 4.sh
pwd #显示当前路径
ls -al #查看当前目录

参数变量
vi 5.sh
#!/bin/bash
echo”当前脚本名称$0.“
echo”共有$#个参数,分别是$.“
echo”第一个参数位$1,第5个位$5.“

4种条件测试语句
文件测试语句
[ -参数 目录/文件 ]
echo $?
反馈0是1否
-d 测试文件是否为目录类型
-e 测试文件是否存在
-f 判断是否为一般文件
-r 测试当前用户是否存有权限读取
-w 测试当前用户是否存有权限写入
-x 测试当前用户是否存有权限执行
逻辑测试语句
与&&,它表示当前面命令执行成功后才会执行后面
或||,它表示当前面命令执行失败后才会执行后面
非!,它表示把条件测试中的判断结果取相反值。
整数值比较语句
-eq 是否等于
-ne 是否不等于
-gt 是否大于
-lt 是否小于
-le 是否等于或小于
-ge 是否大于或等于
字符串比较语句
= 比较是否相同
!= 比较是否不同
-z 判断字符串内容是否为空