Bash
如何將一棵樹中的所有文件複製到另一棵樹,除了那些匹配模式的文件?
我在 ./src/ 下有一個目錄樹
我在 ./work/ 下有另一個匹配的目錄樹
我正在嘗試複製 src 中的所有文件以工作,同時保持目錄結構並排除所有以 .java 結尾的文件。
到目前為止,這是我的嘗試:
find src -type f ! -iname *.java -exec cp {} work \;
這幾乎可以工作,但是所有文件都放在工作的頂層,而不是放在目錄樹中的正確位置。
我怎樣才能做到這一點?(在 Mac OS X 10.9 上使用 bash)
tar cCf /source/path - --exclude "*.java" . | tar xCf /target/path -
rsync -a --exclude='*.java' src/ work/