linux基础语句2
If语句
#!/bin/bash
#this is a shell script
if [ ! -e /root/jiaoben.txt ] #jiaoben.txt do not exsit
then #excute
mkdir -p /root/jiaoben.txt #create a file the name is jiaoben.txt
fi
结果
Ping命令
ping -c 5 -i 0.3 -W 3 $1 &> /dev/null
Read 命令
-p 提示信息
#!/bin/bash
read -p "input: " V #Assign values to variables
if [ $V -ge 85 ] && [ $V -le 100 ] ; then
echo "$V is excellent"
elif [ $V -ge 70 ] && [ $V -le 84 ]
then
echo "$V is pass"
else
echo "$V is fail"
fi
For语句
批量新建用户
先建立一个用户薄
#!/bin/bash
read -p "input password: " pas
for UNAME in `cat user.txt`
do
id $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "Already Exists"
else
useradd $UNAME &> /dev/null
echo "$pas" | passwd --stdin $UNAME &> /dev/null
if [ $? -eq 0 ]
then
echo "$UNAME create success"
else
echo "$UNAME create failure"
fi
fi
done
执行结果
同例 批量ping
$( )中放的是命令,相当于` `,例如todaydate=$(date +%Y%m%d)意思是执行date命令,返回执行结果给变量todaydate,也可以写为todaydate=`date +%Y%m%d`;
${ }中放的是变量,例如echo ${PATH}取PATH变量的值并打印,也可以不加括号比如$PATH
Expr命令是用来计算的
$RANDOM 这个变量,可以随机生成 0~32767之间的整数数
猜数游戏(十位数内)
#!/bin/bash
pr=$(expr $RANDOM % 10)
times=0
while true
do
read -p "input : " V
let times++
if [ $V -eq $pr ]
then
echo "value is right"
exit 0
elif [ $V -gt $pr ]
then
echo "value is high"
else
echo "value is low"
fi
done
结果
case语句
这样写是两个字符小写和大写
用’|’ 或 隔开就是一个字符
判断输入字符类型
#!/bin/bash
read -p "inpu: " KEY
case $KEY in [a-z]|[A-Z])
echo "zifu"
;;
[0-9])
echo "shuzi"
;;
*)
echo "luanma"
esac
at命令
at -l 查看已经写入的与执行命令
at -c 3 查看序号为三的与执行命令的详细信息
atrm 3 删除序号为三的预执行命令
at 设置预执行命令只是单次执行
Crond 周期性的计划任务
分、时、日、月、星期、命令
Crontab -e 编译本用户的周期性计划
如果你是root用户 可以加-u 如: crontab -e -u otheruser 指定其他用户的周期性命令
因为命令一行必须要写命令的具体路径
每周二隔三十分钟重启一下
每周以一点半重启一下
每周一一点半自动备份网站