Bash(在mac上) - 如何在某些条件下结束文件夹结构

时间:2013-01-04 21:59:11

标签: macos bash

我有一个文件夹结构A

A
|-Directory X1
|--File 1
|--File 2
|--File 3
|-Directory X2
|--File 1
|--File 2

我也有文件夹结构B

B
|-Directory X1
|--File 1
|--File 2
|--File 3
|-Directory X2
|--File 1
|--File 2
|--File 3        <--- This files doesn't exist in folder structure A
|-Directory X3   <--- This folder doesn't exist in folder structure A
|--File 1
|--File 2
|--File 3

我的目标是一个命令行,它将结构B复制到结构A,替换其所有文件,复制A中缺少的所有文件,创建A没有但B具有的文件夹并复制文件在那些文件夹中。

最终结果应该是文件夹A:

A
|-Directory X1
|--File 1
|--File 2
|--File 3
|-Directory X2
|--File 1
|--File 2
|--File 3
|-Directory X3
|--File 1
|--File 2
|--File 3

1 个答案:

答案 0 :(得分:2)

rsync会这样做。

rsync -avz B/* A

如果您希望删除--delete*A/中存在的文件,请查看B/个参数。