将具有特定名称并包含特定模式的文件移动到Unix中的另一个目录

时间:2017-02-03 09:50:18

标签: unix

我有一个包含名称以时间戳开头的文件的目录,例如20170102065744.get。其中一些文件包含一个数字作为模式,例如456787.我只需要移动名称与201701 *匹配的文件,并将原始目录中的数字模式456787移动到另一个目录。

操作系统是Sun Solaris Unix

2 个答案:

答案 0 :(得分:1)

不确定solaris操作系统上的正确语法,但是你可能能够使用类似的东西实现这一点(假设你当前的shell提示位置在包含文件的文件夹中)

for i in `find . -type f -name "*201701*" | grep 456787 `; do mv $i move_to_folder/; done

答案 1 :(得分:0)

我能够使用基于@Bogdan建议的想法的grep使用shell脚本来实现它

#!/bin/bash
for i in 'grep -l 456787 src_dir/201701*`
do
   mv $i destn_dir/
done