经过一些简单的bash学习, 我很谨慎地写了一个shell脚本, 用来执行系统备份和恢复(我不敢在终端直接输tar命令, 我害怕一不小心坏了事...), 但是这种脚本是不容许我先执行一下来检查错误的,我必须保证它第一次运行就不能出错,否则可能搞坏我的系统, 所以现在把它贴在这里希望过路者能帮忙排除一下脚本中的错误, 并给些指导, 谢谢!!!
代码如下(修改了一下):
代码: 全选
#!/bin/bash
# scriptname: backupsystem.sh
# 快捷备份系统脚本
# 用法:
# backupsystem.sh --backup 执行系统备份,归档文件将隐藏在我的家目录下;
# backupsystem.sh --recover 恢复系统到上次备份状态
if [ "$UID" != 0 ]; then
echo '您有管理员权限吗?'
exit 1
fi
if [ -n "$1" ]; then
[ "$1" = '--backup' ] && {
cd /home/wonder # wonder为我的用户名
tar -cvpzf '/home/wonder/.system-backup-archive.tgz' \
--exclude='/mnt' \
--exclude='/media' \
--exclude='/proc' \
--exclude='/sys' \
--exclude='/lost+found' \
--exclude='/home' \
--exculde='/var' \
/*
}
[ "$1" = '--recover' ] && {
cd / # 切换到根目录
tar -xzpvf '/home/wonder/.sys-backup-archive.tgz' # 用归档文件中的目录结构覆盖当前的
}
else
echo "请给一个参数"
exit 2
fi