我有一个包含许多(总数各不相同)单词的字符串,我需要获得其中的最后10个单词。我该怎么做?我正在看awk,grep和cut,但是什么都没想到。
一个例子(尽管在我看来问题很明显):
aaa bda fdkfj fds fsd ... dsad dsas dsad zrthd shshh
我想要该字符串的最后10个字。
同样,未定义初始字符串中的单词总数。
当您试图最后查找单词或字符时,最好$
在正则表达式中使用行锚。
$ echo "aaa bda fdkfj fds fsd bar dsad dsas dsad zrthd shshh" | grep -o '[^[:space:]]\+\([[:space:]]\+[^[:space:]]\+\)\{9\} *$'
bda fdkfj fds fsd bar dsad dsas dsad zrthd shshh
您也可以在sed中使用相同的正则表达式。
或者
$ echo "aaa bda fdkfj fds fsd bar dsad dsas dsad zrthd shshh" | grep -oP '\S+(?:\s+\S+){9} *$'
bda fdkfj fds fsd bar dsad dsas dsad zrthd shshh
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句