我遇到了一些问题,因为我的朋友给我发送了一个脚本,以便在任何文件更改时备份我的文件夹。但是我不明白 bash 脚本。有人可以向我解释这段代码的每一行他们做什么吗?
#!/bin/bash
SOURCE="/var/www/my_web/load/"
BACKUP="/home/your_user/load/"
LBACKUP="/home/your_user/load/latest-full/"
DATE=$(date +%Y-%m-%d-%T)
DESTINATION="$BACKUP"/"$DATE"-diff/
rsync -av --compare-dest="$LBACKUP" "$SOURCE" "$DESTINATION"
cd "$DESTINATION"
find . -depth -type d -empty -delete
问候塞巴斯蒂安
这个 Bash 脚本将:
- 设置源目录 (
SOURCE
)。 - 设置目标备份目录 (
BACKUP
)。 - 设置最新完整备份的目标目录 (
LBACKUP
)。 - 以
Y-m-d-Time
格式获取当前系统日期 (DATE
)。 - 将目标目录设置为
BACKUP
+/
+DATE
+-diff
。 - 通过比较目录中的文件,将文件从
SOURCE
同步/复制到DESTINATION
文件夹LBACKUP
。 - 输入目标文件夹 (
cd "$DESTINATION"
)。 - 删除所有空文件夹 (
find
)。