首页 > 解决方案 > Grep 用于所需文本前面的前导空格

问题描述

我需要在grep空格和文件扩展名之间存在的文件名。例子:

[meghanak@cycrh6rtp32 CIT]$ echo -e "Akqmskdnlcn shddhjshd.py" | grep "[[:space:]]*.py"
-e Akqmskdnlcn shddhjshd.py

但我希望结果为:

shddhjshd.py

标签: grepwhitespace

解决方案


$ echo -e "Akqmskdnlcn shddhjshd.py" | grep -o "[^[:space:]]*\.py"
shddhjshd.py

^是否定捕获组。使用[:space:]意味着字符而不是空格。
-o只是只打印出匹配的内容。


推荐阅读