需求

实现一个每天对指定目录归档备份的脚本,输入一个目录名称(末尾不带/),将目录下所有文件按天归档,并将归档日期附加在归档文件名上,放在/root/archive下。

代码实现

#!/bin/bash# 首先判断输入参数个数是否为1
if [ $# -ne 1 ]
thenecho "参数个数错误!应该输入一个参数,作为归档目录名"exit
fi# 从输入参数中获取目录名称
if [ -d $1 ]
thenecho
elseechoecho "目录不存在"exit
fiDIR_NAME=$(basename $1)
DIR_PATH=$(cd $(dirname $1); pwd)# 获取当前日期
DATE=$(date +%y%m%d)#定义生成的归档文件名称
FILE_NAME=archive_${DIR_NAME}_$DATE.tar.gz
DEST=/root/archive/$FILE_NAME#开始归档目录文件echo "开始归档..."
echotar -czf $DEST $DIR_PATH/$DIR_NAMEif [ $? -eq 0 ]
thenechoecho "归档成功!"echo "归档文件为:$DEST"
elseecho "归档出现问题!"echo
fi
exit

测试一下

加入定时任务

crontab -e
0 2 * * * /root/scripts/daily_archive.sh /root/scripts

Linux shell脚本实现归档文件相关推荐

  1. Linux Shell脚本攻略 读书笔记

    内容目录: 嗨,Echo一下 给终端来点颜色 shell的控制结构 算术比较 目录操作 网站下载 tar 归档工具 rsync 备份系统快照 ftp自动传输 磁盘管理 故障排查 使用syslog记录日 ...

  2. LINUX SHELL脚本攻略笔记[速查]

    LINUX SHELL脚本攻略笔记[速查] Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgr ...

  3. 学习笔记之Linux Shell脚本教程:30分钟玩转Shell脚本编程

    Linux Shell脚本教程:30分钟玩转Shell脚本编程 http://c.biancheng.net/cpp/shell/ 转载于:https://www.cnblogs.com/pegasu ...

  4. Linux shell脚本基础学习

    Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提. 1. Li ...

  5. linux 检查权限,检查目录下 文件的权限-linux shell脚本,

    检查目录下 文件的权限-linux shell脚本, #!/bin/bash #History: #2019/07/23    Fsq #This Program will check Permiss ...

  6. Linux shell脚本数值计算个人心得

    Linux shell脚本数值计算个人心得 本篇博客为,个人对与bash数值计算的一些心得与用法. Bash对于数值是没有明确定义的,在shell里面所有的数值都默认为字符串,并不是单纯的数值. 比如 ...

  7. linux运维实战练习及linux shell脚本、awk、sed工具命令学习总结

    一.linux shell 脚本 1.描述shell程序的运行原理(可附带必要的图形说明): Linux系统的shell作为操纵系统的外壳,为用户提供使用操纵系统的接口.它是命令语言.命令解释程序及程 ...

  8. linux shell脚本字符串连接符,学习Linux shell脚本中连接字符串的方法

    这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...

  9. linux下实用小脚本,十个增加 Linux Shell 脚本趣味的小工具

    很多人误以为shell脚本只能在命令行下使用.其实shell也可以调用一些GUI组件,例如菜单,警告框,进度条等等.你可以控制最终的输出,光标位置还有各种输出效果.下面我将介绍一些工具,帮助你创建强大 ...

最新文章

  1. MPB:农科院牧医所赵圣国组-基于GraftM对功能基因进行物种注释
  2. python利用opencv自带的颜色查找表(LUT)进行色彩风格变换
  3. Unity3D专访——真正的面试
  4. (文末有福利)口罩检测覆盖公有云、私有化及SDK等形态,拿来即用精准高效
  5. 安利十二个常用的IPython魔法命令
  6. java 线程池的理解_JAVA线程池原理的理解
  7. python和access哪个难_python和access的区别
  8. Several ports (8080, 8009) required by Tomcat v9.0 Server at localhost are already in use.解决方案
  9. PyTorch(总)---PyTorch遇到令人迷人的BUG与记录
  10. 浙大PAT 1063
  11. NOI Linux 2.0 桌面背景展示
  12. windows开发机做路由器映射大坑
  13. 计算机安全意识小故事,安全故事精选5篇
  14. 微信小号的另一个作用
  15. LeetCode 全站第一,牛逼!
  16. 学习笔记(19):零基础搞定Python数据分析与挖掘-常用的正则符号(二)
  17. inspects a maven model for resolution problems
  18. PayPal开发文档整理(8)——PayPal支付产品和解决方案
  19. Spring的动态代理原理
  20. 数学建模:微分方程模型—常微分方程数值解算法及 Python 实现

热门文章

  1. PPT课件的制作经验
  2. 求知讲堂python+人工智能day11
  3. AutoML系列 | 02-自动化机器学习系统设计
  4. 计算机不能联网怎么设置吗,电脑不能联网怎么设置
  5. OCR财务报表识别方案
  6. JVM调优总结(十)-调优方法
  7. mre应用和Native的交互之增加mre sdk接口
  8. 图灵社区一个有关express的系列文章
  9. 优质免费app开发平台汇总
  10. 中学计算机课 打字教案,计算机课教案.doc