假设我试图找到一个包含两个单词One
和 的文件名Two
。序列必须按该顺序排列 ,例如 。同时,我想排除任何以相反顺序包含单词的文件,例如 。./fksklknejnwjOnesvjnh9uibivuwTwojnwovno
./fksklknejnwjTwosvjnh9uibivuwOnejnwovno
到目前为止,我得到的只是以下内容,它不排除单词顺序错误的文件:
find . -type f -name "*One*" -name "*Two*"
如果这个问题非常基本,任何帮助将不胜感激和抱歉。只是一个初学者,第一次在这里发帖。
答案1
-name
中的测试使用find
常见的文件名通配模式。该模式与*One*Two*
包含两个子字符串One
且Two
按该顺序的任何名称相匹配。
所以:
find . -type f -name '*One*Two*'
您-name '*One*' -name '*Two*'
可以找到名称包含两个字符串的文件,顺序不限。由于每个单独的测试对于单词顺序“错误”的文件都是正确的,因此这将为您提供要排除的文件。