我一直在寻找一个命令,该命令将从当前目录返回文件名中包含字符串的文件。我已经看到locate和find命令可以找到以某些内容开头first_word*或结尾的文件*.jpg。
locate
find
first_word*
*.jpg
如何返回文件名中包含字符串的文件列表?
例如,if 2012-06-04-touch-multiple-files-in-linux.markdown是当前目录中的文件。
2012-06-04-touch-multiple-files-in-linux.markdown
如何返回此文件和其他包含字符串的文件touch?使用诸如find '/touch/'
touch
find '/touch/'
用途find:
find . -maxdepth 1 -name "*string*" -print
它将在当前目录中找到所有maxdepth 1包含“字符串”的文件(如果要递归,则删除),并将其打印在屏幕上。
maxdepth 1
如果要避免文件包含“:”,则可以键入:
find . -maxdepth 1 -name "*string*" ! -name "*:*" -print
如果您要使用grep(但我认为没有必要检查文件内容),则可以使用:
grep
ls | grep touch
但是,我重复一遍,它find是为您的任务提供的更好,更清洁的解决方案。