Shell脚本,打包文件压缩到指定目录,每天定时任务运行脚本
#!/bin/bash
# 首先判断输入参数的个数是否为1
if [ $# -ne 1 ]
then
echo "参数个数错误,应该输入一个参数!"
exit
fi
# 从参数中获取目录名称
if [ -d $1 ]
then
echo
else
echo
echo "目录不存在!"
echo
exit
fi
# 最后一个/后的目录
DIR_NAME=$(basename $1)
# 文件绝对路径
DIR_PATH=$(cd $(dirname $1);pwd)
# 获取当前日期年月日
DATE=$(date +%y+%m%d)
# 定义生成的归档文件名称
FILE=archive_${ DIR_NAME}_${ DATE}.tar.gz
DEST=/root/log/$FILE
# 开始归档目录
echo "开始归档"
echo
tar -czf $DEST $DIR_PATH/$DIR_NAME
# 判断命令是否执行成功
if [ $? -eq 0 ]
then
echo
echo "归档成功!"
echo "归档文件为:$DEST"
echo
else
echo "归档失败!"
fi
exit
定时任务运行脚本
查看是否存在定时任务
[root@192 test]# crontab -l
no crontab for root
编写定时任务
[root@192 test]# crontab -e
0分钟,2几点钟(凌晨两点),*天数(每个月的第几天),*月,*星期几
0 2 * * * /root/test/daily_archive.sh /root/log
再次查看定时任务
[root@192 test]# crontab -l
0 2 * * * /root/test/daily_archive.sh /root/log
[root@192 test]#