我想将文件结构同步到另一个文件结构,但转换一个,例如:
filesStructureA/ --[transformation(T)]--> filesStructureB/
是否可以使用rsync
执行此操作?我看到rsync接受一个文件列表作为输入(--files-from
),但实际上并不知道如何为每个文件应用转换T ...
换句话说,rsync是否可以动态重命名文件?
谢谢。
-
例如,从src/
到dst/
,可以抑制目标路径中的每个bar/
个出现,例如:
src/foo/hi.txt
src/foo/bar/hey.txt
src/foo/bar/bar/lorem/bar/hoy.txt
sed 's/bar\///' <- [Transformation function]
dst/foo/hi.txt
dst/foo/hey.txt
dst/foo/lorem/hoy.txt
答案 0 :(得分:0)
答案是pax:
cd src/
find . -type -f -path '*bar/*' -print0 | pax -0 -rw -v -Y -Z -s '/\/bar//g' ../dst/
cd ..