在UNIX bash shell(特别是Mac OS X Leopard)上,最简单的方法是将具有特定扩展名的每个文件从文件夹层次结构(包括子目录)复制到同一目标文件夹(没有子文件夹)?
@H_502_14@
在bash:
显然,在源层次结构中存在重复的问题。我不介意如果他们被覆盖。
示例:我需要复制以下层次结构中的每个.txt文件
/foo/a.txt /foo/x.jpg /foo/bar/a.txt /foo/bar/c.jpg /foo/bar/b.txt
/dest/a.txt /dest/b.txt
find /foo -iname '*.txt' -exec cp \{\} /dest/ \;
find将找到路径/ foo下匹配通配符* .txt的所有文件,不区分大小写(这就是-iname的意思)。对于每个文件,find将执行cp {} / dest /,用找到的文件代替{}。