本文介绍了AWK或Perl单行打印行,如果第二个字段是超过7个字符长的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有1000行的文件,每行有2个字,用空格隔开。如何打印每行只有最后一个字长度大于7个字符更大?我可以用awk RLENGTH?有没有在Perl一个简单的方法?
I have a file of 1000 lines, each line has 2 words, separated by a space. How can I print each line only if the last word length is greater than 7 chars? Can I use awk RLENGTH? is there an easy way in perl?
推荐答案
@OP,当你调用匹配()
函数awk的RLENGTH使用。相反,使用长度()
函数来检查字符长度
@OP, awk's RLENGTH is used when you call match()
function. Instead, use the length()
function to check for length of characters
awk 'length($2)>7' file
如果你正在使用bash,外壳的解决方案
if you are using bash, a shell solution
while read -r a b
do
if [ "${#b}" -gt 7 ];then
echo $a $b
fi
done <"file"
这篇关于AWK或Perl单行打印行,如果第二个字段是超过7个字符长的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!