shell: 获取每行文本的最后几个字符


tail方式

tail参数-c就可以获取最后的几个字节

-c, --bytes=[+]NUM       output the last NUM bytes; or use -c +NUM to
                             output starting with byte NUM of each file
ubuntu@VM-16-14-ubuntu:~$ echo "xyjk1002-rejuvenation" | tail -c 7
nation

注:echo指令显示的字符串组后有隐含换行/n,可以使用echo -n参数避免

awk方式

返回从起始位置起,指定长度之子字符串;若未指定长度,则返回从起始位置到字符串末尾的子字符串

格式:
substr(s,p) 返回字符串s中从p开始的后缀部分
substr(s,p,n) 返回字符串s中从p开始长度为n的后缀部分

(base) ubuntu@VM-16-14-ubuntu:~$ echo -n "xyjk1002-rejuvenation" | awk  '{print substr($0,length($0)-5)}'
nation

注:awk没有分隔符时$0表示每一行

参考

原创文章,作者:745907710,如若转载,请注明出处:https://blog.ytso.com/277392.html

(0)
上一篇 2022年7月27日
下一篇 2022年7月27日

相关推荐

发表回复

登录后才能评论