我有一个像这样的字符串:
数据-C(huk24-small1);除法器 – 滨1.4.4;除法器 – CONF-1.3.3-W(1,16);存储彬1.5.4;存储CONF-1.5.0-W( 1);工人彬4.5.1;工人CONF-4.4.1-C(huk24)_20130620200658
其中应删除带有14位数字和下划线的时间戳.所以看起来应该是这样的:
数据-C(huk24-small1);除法器 – 滨1.4.4;除法器 – CONF-1.3.3-W(1,16);存储彬1.5.4;存储CONF-1.5.0-W( 1);工人彬4.5.1;工人CONF-4.4.1-C(huk24)
我怎样才能在bash脚本中实现这一点?请注意,只有在确实存在下划线和14位数时才应该删除.
使用sed:
echo $str | sed 's/_[0-9]\{14\}$//'
要么
echo ${str%_[0-9]*}