Linux 您所在的位置:网站首页 linux文件备份实验 Linux

Linux

2024-07-17 18:13| 来源: 网络整理| 查看: 265

实验目录 一、实验环境:二、实验目的:三、实验要求:四、实验内容:五、实验步骤:六、实验结果与分析:

一、实验环境:

•虚拟机数量:1 •系统版本:Centos 7.5

二、实验目的:

数据备份是系统管理工作中的重要内容。简单的文件备份工作主要是将重要的数据文件,如一些系统和网络服务器的配置文件、用户个人数据文件、数据库文件等复制到一个指定的地方。

三、实验要求:

显然,备份工作往往是需要反复执行的,而且还可以制定备份计划,指定在某个时间点执行备份工作。因此,有必要编写脚本以实现备份工作的自动执行。

四、实验内容:

本实验将编写脚本对指定目录下的具有可执行权限的普通文件进行备份,而备份文件的存放路径是用户主目录下的备份目录,备份目录名称为“backup”并附上当前系统日期。

五、实验步骤:

第1步: 编写命令获取指定目录中的文件列表。显然需要用到ls命令获取文件列表并且将其记录在变量dirlist中,可以在命令行中先进行测试,假设现在需要备份的目标目录为用户主目录下的shellscript(它存放了一些脚本文件以及相关的输出数据文件):

[root@localhost ~]# filelist=`ls /root/shellscript` [root@localhost ~]# echo $filelist brk-continue.sh cmpnumber.sh cmpstring.sh dircheck.sh divide-new.sh inverse.sh logfile max.sh printname.sh printnumber.sh statIP.log statIP.sh symbolkind.sh [root@localhost ~]#

注意:filelist=`` 这里是‘’~‘’键盘上的符号,并不是单引号 第2步, 编写命令创建备份目录。显然需要使用mkdir命令创建备份目录,但问题的关键在于需要给定备份目录的名称,根据目标要求,在命令行中做测试:

[root@localhost ~]# echo $HOME/backup `date` /root/backup 2021年 06月 07日 星期一 15:08:35 CST

但由于上述生成的字符串过长,并不适合用于文件命名,因此需要修改生成时间字符串的格式,如下:

[root@localhost ~]# echo $HOME/backup `date "+%Y%m%d%H%M%S"` /root/backup 20210607151144

第3步, 构建脚本的基本框架。根据之前的实验结果,可以编写代码如下,将其保存为脚本backup-frame.sh:

#!/bin/bash #检查是否有一个参数用于制定备份目录 if [ $# -ne 1 ]; then echo "please input the backup directory" exit fi #检查备份的目标目录是否有效 if [ ! -d $1 ] || [ ! -e $1 ]; then echo "wrong: bad directory path" exit fi filelist=`ls $1` backupdir="$HOME/backup`date`" mkdir "$backupdir" for filename in $filelist do echo $filename done

添加可执行权限:

[root@localhost ~]# chmod u+x backup-frame.sh

测试该脚本框架是否可行,注意在测试前自行建立备份目录的目标目录并在其中放置需要备份的文件:

[root@localhost ~]# ./backup-frame.sh /root/file


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有