我正在寻找一个简单的bash命令来在文件名、目录名和所有文件的文本中搜索短语。它应该返回一个文件和目录列表。理想情况下,我希望选择将其管道化为一个类似于>myfiles.txt的文件
类似于:
find 'my key phrase'
find 'my key phrase' > mylist.txt
将返回:
/home/stuff/filewithmykeyphraseinit.txt
/home/stuff/a filename with my key phrase.doc
/home/stuff/a directory with my key phrase/another subdirectory/
编辑:
我得到了很多很好的建议,我正在测试。一个问题:有没有办法让这些不区分大小写?我相信在grep中添加-i是可行的。如何查找文件路径/名称?另外,我还想选择将输出发送到文本文件或屏幕。
最佳答案
{ find . -name '*my key phrase*' ;
grep -rl 'my key phrase' . ;
} | sort -u > mylist.txt