如何在不同的目录中find并复制相同扩展名的文件到linux中的单个目录?

那么,如何查找和复制所有文件,

*.a 

那是在,

  ~/DIR{1,2,3,...} 

  ~/tmp/foo? 

假设你的意思递归复制类型.a从一些源位置的一切。 还没有验证,但这应该做到这一点。

 find <root-of-search> -type f -name '*.a' -exec cp {} /tmp/foo \; 

替换为您要从中搜索的任何位置的顶部。 您可能必须在* .a附近引用引号,而您可能必须将其换成单引号而不是反斜杠来代替转义结尾的分号。

在一个bash shell中:

 cp ~/DIR*/*.a ~/tmp/foo 
 find ~/DIR{1,2,...} -name *.a print0 | xargs -i -0 cp '{}' ~/tmp/foo