如何查找与模式匹配的文件名并在unix中复制这些文件名?

时间:2013-08-25 08:45:32

标签: unix

我想查找以All_Responses_11367开头的文件列表,并将这些文件复制到另一个目录。例如,每天我有40个文件,需要复制最近80天的文件:

All_Responses_11367_8_20_2013.txt
All_Responses_11368_8_20_2013.txt
All_Responses_11369_8_20_2013.txt
All_Responses_11367_8_21_2013.txt
All_Responses_11368_8_21_2013.txt
All_Responses_11369_8_21_2013.txt
All_Responses_11367_8_22_2013.txt
All_Responses_11368_8_22_2013.txt
All_Responses_11369_8_22_2013.txt

我想一次为所有日期复制一个相同的文件。

All_Responses_11367_8_20_2013.txt
All_Responses_11367_8_21_2013.txt
All_Responses_11367_8_22_2013.txt

我只希望按文件名的最后77个日期文件,其中包含一个日期。我希望那些过去77天的文件按文件名而不是文件生成日期。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

此find命令应该提供在过去77天内修改/创建的当前目录中以All_Responses_11367*开头的所有文件:

find . -name "All_Responses_11367*" -maxdepth 1 -type f -mtime -77 -exec cp '{}' dest \;

dest更改为您要复制这些文件的其他目录。