如何列出包含特定字符串的文件名

How to list filenames containing a specific string

我一直在寻找可以打印包含特定字符串的文件名列表的命令,无论该字符串是否是更大字符串的一部分。

例如,假设有一个包含文件 "DABC.txt""ABC.txt""ABC""CDA.txt" 的目录。然后如果我想搜索所有包含单词 "ABC" 的文件名,我要查找的命令应该打印出 "DABC.txt""ABC.txt""ABC".

我认为 find -name 可以在这里工作,但它只打印出与关​​键字匹配的精确字符串的文件名;它不会打印出包含关键字的文件名作为文件名字符串的 部分 ,而不是整个字符串本身。 (点赞"DABC.txt"

是否有替代方案?提前致谢。

很简单

使用 ls 列出文件

ls -lrt *ABC*

使用 ls

列出目录
ls -ld *ABC*

使用 ls 和 grep

ls -l | grep -i "ABC"

使用查找命令

find . -name '*abc*'

在查找中使用不区分大小写的搜索

find . -iname '*abc*'