用于备份的交互式bash脚本

时间:2017-09-01 16:04:09

标签: bash shell backup

我写了一个bash脚本来从一个文件夹中读取一堆CSV文件,并在一个单独的备份目录中创建一个备份文件。

#!/bin/sh

files=$(ls /../test/*.csv 2> /dev/null | wc -l)

if [ **"$files" != "0"** ]

then

        # What to backup.
        backup_files="/../test/test2"
        # Where to backup to.
        dest="../test/"
        # Create archive filename.
        day=$(date +%A)
        name="some-file.csv"
        archive_file="$name-day.tgz"

        # Print start status message.
        echo "Backing up $backup_files to $dest/$archive_file" 
        echo 
        date

        # Backup the files using tar.
        tar czf $dest/$archive_file $backup_files

        # Print end status message.
        echo
        echo "Backup finished"
        date

else
        echo nothing there
        break
fi

脚本应该遍历每个CSV文件(file(1).csvfile(2).csv等)并逐个写入我的备份文件,但问题是它只从最后一个文件写入({ {1}})。

1 个答案:

答案 0 :(得分:0)

原因是您没有扩展$day变量。使用此:

archive_file="$name-$day.tgz"