【发布时间】:2013-03-30 01:17:43
【问题描述】:
我只需要使用 ls 查找具有扩展名的目录中的文件(不能使用 find)。
我试过 ls *.*,但如果 dir 不包含任何带扩展名的文件,它会返回“没有这样的文件或目录”。
我不希望出现这个错误,如果有扩展名的文件,我希望 ls 返回到 cmd 提示符。
我尝试使用 grep 和 ls 来达到同样的效果。
ls|grep "*.*" - 不起作用 但是 ls | grep "\."有效。
我不知道为什么 grep *.* 不起作用。任何帮助表示赞赏!
谢谢!
【问题讨论】:
-
ls|grep '\.'怎么样 -
是的,如上所述,它有效。你能解释一下为什么会这样,为什么 *.* 不会吗?
-
ls *.{mp3,exe,mp4}这个问题应该有帮助:stackoverflow.com/questions/1447625/… -
grep 使用正则表达式,而不是 shell 模式
-
ls 不是这项工作的工具。您需要使用
find。无论对find的限制是什么,请告诉我们,我们将帮助您解决它。