我想列出只有空格才具有空格的文件。
例如使用命令touch " "
創建的文件。
這將創建一個有3個空格的文件。
我正在使用以下命令,但它沒有列出所需的文件。
ls -lart | grep '[^a-zA-Z0-9]'
我想列出只有空格才具有空格的文件。
例如使用命令touch " "
創建的文件。
這將創建一個有3個空格的文件。
我正在使用以下命令,但它沒有列出所需的文件。
ls -lart | grep '[^a-zA-Z0-9]'
Do not parse ls
。相反,你可以使用find
使用正則表達式:
find . -regextype posix-extended -regex '^.*/ *$'
由於man find
說:這是整個路徑上的匹配,不是搜索,我們只能說(學分約翰Kugelman):
find . -regextype posix-extended -regex '.*/ *'
這將找到由多個空格組成的文件。
您可以按照與任何文件相同的方式列出它:按名稱或僅與其匹配的模式。
ls -lart " "
模式需要bash
shopt -s extglob
(其他shell可能有一些simliar)。一種可能性:
ls -lart "+([[:space:]])"
@JohnKugelman真的,我沒有檢查過這種情況。謝謝,更新使用正確的正則表達式 – fedorqui
錨點不應該是必需的。手冊頁上說:「這是一條全程的匹配,而不是搜索。」 –
感謝您分享有價值的信息。現在我不會使用ls進行解析。您能否請分享一些與查找命令使用相關的好文章。 –