我的输出如下:
foo-1_2_3_4_5_bar
foo-6_7_8_9_0_1_2_bar
如何删除尾随字符,以便获得此输出:
foo-1
foo-6
我尝试过:
awk 'sub("..........$", "")
但这非常不方便,因为字符串可以有不同的长度。
答案 0 :(得分:4)
答案 1 :(得分:2)
sed 's/_.*//'
试验:
kent$ echo "foo-1_2_3_4_5_bar
foo-6_7_8_9_0_1_2_bar"|sed 's/_.*//'
foo-1
foo-6
添加awk单行:
awk -F_ '$0=$1'
相同的输入,相同的输出:
kent$ echo "foo-1_2_3_4_5_bar
foo-6_7_8_9_0_1_2_bar"|awk -F_ '$0=$1'
foo-1
foo-6