shell awk 问题求助

cqd0820 2015-08-26 10:58:22
s=abcdefgh_123
x=123
lenall=`expr length $s`
lendb=`expr length $x`
lentable=$[$lenall-$lendb]
echo $s | awk '{print substr($1,$lentable,$lendb)}';

如上面代码所示,我该如何才能得到123呢?
谢谢
...全文
1484 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
a574258039 2016-09-08
  • 打赏
  • 举报
回复
s=abcdefgh_123 x=123 lenall=`expr length $s` lendb=`expr length $x` echo ${s:(lenall-lendb):lendb}
alinly 2015-09-15
  • 打赏
  • 举报
回复
引用 2 楼 lee244868149 的回复:
s=abcdefgh_123 x=123 echo $s | grep -oE "$x"
不错.
奔跑的路 2015-08-26
  • 打赏
  • 举报
回复
s=abcdefgh_123 x=123 echo $s | grep -oE "$x"
奔跑的路 2015-08-26
  • 打赏
  • 举报
回复
echo "aservg_123" | grep -oE "[0-9]*$"

2,161

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 UNIX文化
社区管理员
  • UNIX文化社区
  • 文天大人
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧