如何列出使用命令$ touch“”创建的文件,只在文件名中包含空格

时间:2016-08-23 13:42:08

标签: unix grep

我想列出名称中只有空格的文件。

例如使用命令touch " "创建的文件。

这将创建一个包含3个空格的文件。

我正在使用以下命令,但它没有列出所需的文件。

ls -lart | grep '[^a-zA-Z0-9]'

2 个答案:

答案 0 :(得分:3)

Do not parse ls。相反,您可以将find与正则表达式一起使用:

find . -regextype posix-extended -regex '^.*/ *$'

由于man find这是整个路径上的匹配,而不是搜索,我们可以说(约翰库格曼的信用):

find . -regextype posix-extended -regex '.*/ *'

这将找到包含多个空格的文件。

答案 1 :(得分:1)

您可以按照与任何文件相同的方式列出它:按名称或仅与其匹配的模式。

ls -lart "   "

shopt -s extglob中的模式需要bash(其他shell可能有类似的东西)。一种可能性:

ls -lart "+([[:space:]])"