linux自动归档脚本,实现每个一个小时自动压缩文件,压缩文件名为当前日期
时间: 2024-03-06 09:48:50 浏览: 187
好的,以下是一个每小时自动压缩文件的示例脚本:
```bash
#!/bin/bash
# 指定要归档的目录
DIR_TO_BACKUP="/home/user/documents"
# 指定要保存归档文件的位置
BACKUP_DIR="/backup"
while true
do
# 指定要保存归档文件的名称,格式为当前日期
BACKUP_FILE="$BACKUP_DIR/backup_$(date +%Y-%m-%d_%H-%M-%S).tar.gz"
# 创建归档并压缩
tar -czf $BACKUP_FILE $DIR_TO_BACKUP
# 如果归档成功,输出成功信息
if [ $? -eq 0 ]; then
echo "备份已成功创建于 $BACKUP_FILE"
else
echo "备份创建失败"
fi
# 等待1个小时后再次执行备份
sleep 3600
done
```
在这个示例脚本中,`while true` 循环会不断执行备份操作,`BACKUP_FILE` 变量指定每次备份的文件名,格式为当前日期。然后使用 `tar` 命令创建归档并压缩,最后根据 `tar` 命令的返回值判断是否归档成功,并输出相应的信息。备份完成后,脚本会等待1个小时后再次执行备份操作。
您可以根据自己的需求修改这个脚本,例如修改备份间隔时间、修改备份文件名格式等。
相关问题
linux实现自动归档脚本,并且每个一个小时自动压缩文件,压缩文件名取名为当前日期
可以使用Linux中的crontab来实现自动归档和压缩文件的功能,具体步骤如下:
1. 创建一个用于存放需要归档的文件的文件夹,例如archive。
2. 创建一个shell脚本,例如archive.sh,用于自动归档和压缩文件。脚本内容如下:
```
#!/bin/bash
# 定义需要归档的文件夹路径
archive_dir="/path/to/archive"
# 定义压缩文件名为当前日期
compress_file=$(date "+%Y-%m-%d").tar.gz
# 进入需要归档的文件夹路径
cd "$archive_dir"
# 将文件夹中的所有文件归档并压缩为指定的文件名
tar -zcvf "$compress_file" *
# 将压缩文件移动到指定的目录
mv "$compress_file" "/path/to/compressed"
# 清空归档文件夹中的内容
rm -rf ./*
```
3. 给脚本添加可执行权限:
```
chmod +x archive.sh
```
4. 使用crontab来定时执行脚本。打开终端,输入以下命令:
```
crontab -e
```
5. 在打开的crontab文件中添加以下内容:
```
0 * * * * /path/to/archive.sh
```
这表示每个小时的0分钟执行一次archive.sh脚本。
注意:需要将脚本路径和压缩文件存放路径替换为实际的路径。
阅读全文