请帮助我在最后一次出现“_”之前获取所有内容。我的字符串看起来像。
abc_defg_hijkl_20160101.txt
我只需要在最后一个“_”之前的部分
abc_defg_hijkl
我正在尝试使用cut但是再次无法使用它,因为下划线('_')的数量不固定。
答案 0 :(得分:0)
使用BASH的字符串操作,您可以在输入的最后_
之后修剪部分:
s='abc_defg_hijkl_20160101.txt'
echo "${s%_*}"
abc_defg_hijkl
如果您没有使用BASH,那么您可以使用此sed
命令从输入中删除最后_
之后的部分:
echo "$s" | sed 's/_[^_]*$//'