感谢您花时间阅读我的帖子。
我写了一个小的bash脚本来备份我的主分区。它备份正确,但在归档了我希望它删除旧档案的所有内容之后,它没有。
这是我的代码:
#!/bin/bash
# config
src="/home"
trgt="/media/atlas/Backup/home.daily"
owd=$PWD
# abort if any of the commands fail
set -e
cd $trgt
todays=$(date +'%Y-%m-%d') # nicely sortable names for backups
last=$(ls -r | head -1)
to_delete=$(ls -r | tail -n +3) # will keep the last backup
tar -cvpzf ${todays}.tar.gz --exclude-from="/var/scripts/exclude.txt" --one-file-system /home > /var/log/backup/home.daily.${todays} 2>&1
# now we're safe to remove the old one(s)
rm -f $to_delete
有趣的是,如果我注释掉tar命令,那么rm -f $ to_delete的工作方式就应该如此。
有人可以对此有所了解吗?看起来tar阻止了任何其他命令,但它让我困惑,因为我认为这些将按顺序执行。
对于后台,/ media / atlas / mount安装在Samba上。