循环从多个目录Linux复制文件

时间:2013-01-14 22:49:52

标签: linux for-loop copy-paste

任务是将文件从几个以n = 1:10编号的子目录(例如/dir_4/file.txt)复制到主目录下的不同名称(例如file_4.txt),如下所示:

for n=1:10
 cp /dir_n/file.txt file_n.txt
end

如何在Linux中编写和执行此脚本?

2 个答案:

答案 0 :(得分:2)

在bash中,这应该这样做。

#!/bin/bash
for I in {1..10}; do
    cp /dir_${I}/file.txt file_${I}.txt
done

答案 1 :(得分:0)

在Python中

   import os
   import shutil
   src="dir1"
   dest="test"
   myrange = range(1,3)
   for var in myrange:
       dfile = "test/temp_"+str(var)+".txt"
       src = "dir"+str(var)
       full_file_name = os.path.join(src, "temp.txt")
      if (os.path.isfile(full_file_name)):
                      shutil.copy(full_file_name, dfile)