1.shell 是批处理程序,类似与windows的bat文件
2.写shell时,第一行要以#!/bin/bash 开头 Execute the file using the Bash shell.
3.使用#注释(最好备注shell脚本的功能作用以防日后忘记)
4.文件名应以.sh结尾
5.运行时,执行方式 sh 1.sh;chmod +x 1.sh; ./1.sh || /root/test/1.sh(绝对路径)
if
if [ ];then
elif [ ];then
else...
fi
[[ ]] 比[]更通用。
-gt 大于
-ge 大于等于
-lt 小于
-le 小于等于
-eq 等于
-ne 不等于
if [ $a -gt 10 || $a -lt 4 ]
if [ $a -gt 10 -o $a -lt 4 ]
|| -o(or) 或者 && -a(and) 并且
-f 判断是否是一个文件且存在
-d 判断是否是一个目录且存在
-e 判断目录或文件是否存在
-z 表示变量为空时成立 if [ -z $b ]
-r 判断是否可读
-w 判断是否可写
-x 判断是否可执行
case
#!/bin/bash
n=88
a=$[$n%2]
case $a in
1)
echo " "
;;
0)
echo " "
;;
*)
echo " "
;;
esac
for
#!/bin/bash
for i in `seq 1 10`
do
echo $i
done
while
while [条件] ;do
命令
done
read -p “*****” a 交互 读取输入
补充知识:
date
date +%F xxxx-xx-xx 日期
date +%T xx:xx:xx 时间
%y 2位的年
%Y 4位的年
%m 月份
%M 分钟
%d 日期
%S 秒
%s 时间戳
%w 周几(周日显示0)
%W 今年的第几周
ntpdate 时间服务器地址 网络同步时间
如果没有安装 请安装yum install ntp 并开启服务 service ntpd start
date -s “2017-12-22 11:40:50” 本地修改日期时间
date -d “-1 day” -d 表示不是现在 是指定的时间 week year month day min hour
seq
用法:seq [选项]... 尾数
或:seq [选项]... 首数尾数
或:seq [选项]... 首数增量 尾数
-w 0001 02 ………20
乘法口诀表
#!/bin/bash
for i in `seq 1 9`
do
for j in `seq 1 $i`
do
k=$[$i*$j]
echo -ne "$j * $i =$k "
done
echo
done
for i in `seq 1 9`
do
for j in `seq 1 $i`
do
k=$[$i*$j]
echo -ne"$j""x""$i = $k "
done
echo
done
死循环
while :; do echo 1; sleep 2; done 每隔两秒打印一个1
while sleep 2; do echo 1; done
break 退出循环
continue 退出本次循环继续下次循环
exit 退出shell程序
echo “内容”|mail -s ‘主题’ 邮箱地址 尽量用英文
---------------------
作者:TynMhxx
来源:CSDN
原文:https://blog.csdn.net/TynMhxx/article/details/78879548
版权声明:本文为博主原创文章,转载请附上博文链接!