你如何编写像这样的Rsync多文件夹shell脚本?

时间:2017-09-19 07:38:02

标签: bash shell

来源路径/var/www/html/20170101/*.jpg 目的地路径/Backup/html/20170101/ 下面将有很多Source路径,例如20170101,20171231,一个带日期名称的目录,每个目录中会有很多图形。如何编写Rsync shell脚本?我现在正在使用它 例如:

Rsync -avzh --progress /var/www/html/20170101/ /Backup/html/20170101/

我想编写一个脚本,可以在日期目录完成时使日期成为变量的一部分,然后更改第二天的目录以继续Rsync

1 个答案:

答案 0 :(得分:0)

这就是你想要的:

将所有目录名称放在文本文件中,格式如下

cat dirnamefile

2017010
20171231

现在编写一个shell脚本来读取文件并每次替换目录:

i=0
while read line;
do
arr[$i]=`echo $line`
i = `expr $i + 1`
done<dirname

for var in ${arr[@]}
do
Rsync -avzh --progress /var/www/html/$var/ /Backup/html/$var/
done

上面的脚本将获取目录的不同名称列表,然后通过在每个循环中运行rsync来循环。

这是你在找什么?