用于备份的交互式 bash 脚本

interactive bash script for backups

我写了一个 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 等)并一个一个地写入我的备份文件,但问题是它只从最后一个文件开始写入(file(3).csv).

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

archive_file="$name-$day.tgz"