用于备份的交互式 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).csv
、file(2).csv
等)并一个一个地写入我的备份文件,但问题是它只从最后一个文件开始写入(file(3).csv
).
原因是您没有扩展 $day
变量。使用这个:
archive_file="$name-$day.tgz"
我写了一个 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).csv
、file(2).csv
等)并一个一个地写入我的备份文件,但问题是它只从最后一个文件开始写入(file(3).csv
).
原因是您没有扩展 $day
变量。使用这个:
archive_file="$name-$day.tgz"