通过for循环复制文件:循环仅执行最后一项

时间:2018-09-10 09:55:48

标签: linux for-loop unix copy

我想将文件从一个驱动器复制到另一个驱动器。文件结构如下所示:

  • ID_01
    • 文件夹A
      • File1.txt
      • File2.txt
  • ID_02
    • 文件夹A
      • File1.txt
      • File2.txt
  • ID_03
    • 文件夹A
      • File1.txt
      • File2.txt

现在,我只想将所有* .txt文件都复制到一个与它们的ID对应的文件夹中,并将其复制到新驱动器上。因此,ID_01中的File1&2.txt仍将位于名为ID_01的目录中,ID_02中的File1&2.txt将仍位于名为ID_02等的目录中。

我尝试了以下命令:

for i in ID* ; do cp -r drive1/$i/FolderA/*.txt drive2/$i ; done

我尝试了不同的方法,但是不幸的是,它总是将所有文件复制到最后一个ID(此处是ID_03)中,而不是复制到其相应的ID目录中。

我很困惑,但是我想这是一个简单的解决方法。任何帮助将不胜感激!

0 个答案:

没有答案