<p>使用<a href="https://docs.python.org/2/library/os.html#os.walk" rel="nofollow">os.walk</a>和<a href="https://docs.python.org/2/library/fnmatch.html" rel="nofollow">fnmatch</a>:</p>
<p><strong>copytiffs.py</strong></p>
<pre><code>#~/usr/bin/env python
import os, shutil, fnmatch
def main():
src = "Volumes/MacintoshHD/TEST_SHUTIL/FROM"
dst = "Volumes/MacintoshHD/TEST_SHUTIL/TO"
file_names = ["120099.TIFF", "901664.TIFF", "902257.TIFF"]
for root, dirnames, filenames in os.walk(src):
for target in file_names:
for candidate_filename in fnmatch.filter(filenames, target):
shutil.copy(os.path.join(root, candidate_filename), dst)
if __name__ == '__main__':
main()
</code></pre>
<p><strong>在运行脚本之前*</strong></p>
^{pr2}$
<p><strong>运行脚本</strong></p>
<pre><code>[root@joeyoung.io copyfiles]# python copytiffs.py
</code></pre>
<p><strong>运行脚本后</strong></p>
<pre><code>[root@joeyoung.io copyfiles]# tree
.
|-- Volumes
| `-- MacintoshHD
| `-- TEST_SHUTIL
| |-- FROM
| | |-- 120099.TIFF
| | |-- ignoreme.txt
| | |-- sub1
| | | |-- 901664.TIFF
| | | `-- ignoreme.txt
| | `-- sub2
| | |-- 902257.TIFF
| | `-- ignoreme.txt
| `-- TO
| |-- 120099.TIFF
| |-- 901664.TIFF
| `-- 902257.TIFF
`-- copytiffs.py
</code></pre>