如果字符串匹配,则将文件移动到新文件夹

如果字符串匹配,则将文件移动到新文件夹

我正在尝试浏览多个文件夹并检查其内容。如果其中一个或多个文件与给定列表中的任何字符串匹配,我想将这些文件移动到新文件夹。我已经有新文件夹了。

答案1

#!/bin/bash

find /path/to/sourcedir -type f | grep "string1\|string2\|string3" | while read f
do
  mv "$f" /path/to/destination
done

如果您有许多字符串,您可以跳过 "string1\|string2\|string3"并使用 grep --file=file_of_patterns.txt包含file_of_patterns.txt要匹配的字符串的文本文件(每行一个)

相关内容