如何将grep -rn "sqs" *
显示的结果限制为排除长结果(超过一行或两行)?
发布于 2021-01-22 07:52:24
你可以试试这个find + awk
find . -type f -exec awk 'length() <= 80 && /sqs/ {
print FILENAME ":" FNR ":\033[1;31m" $0 "\033[0m "}' {} +
length() <= 80
将在them."\033[1;31m" $0 "\033[0m "
中有80个或更少字符的行中搜索sqs
字符串,用于为red
.行着色。
发布于 2021-01-22 08:16:53
在Perl中使用grep
,然后进行过滤,最后,使用grep only添加着色(否则,它不会做任何有用的操作,因为所有行都应该匹配):
grep -rn 'sqs' * | perl -ne 'print if length $_ <= 30' | grep 'sqs'
https://stackoverflow.com/questions/65848340
复制相似问题