在linux中第二次重复指定字符之前删除数据

我有一个文本文件,其中有一些下面的数据:

AB-NJCFNJNVNE-802ac94f09314ee AB-KJNCFVCNNJNWEJJ-e89ae688336716bb AB-POJKKVCMMMMMJHHGG-9ae6b707a18eb1d03b83c3 AB-QWERTU-55c3375fb1ee8bcd8c491e24b2 

我需要删除第二个连字符( - )之前的数据,并生成下面的输出的另一个文本文件:

 802ac94f09314ee e89ae688336716bb 9ae6b707a18eb1d03b83c3 55c3375fb1ee8bcd8c491e24b2 

我很新的Linux和尝试sed命令与过去几个小时的尝试失败。 我怎样才能得到所需的输出sed或任何其他有用的命令,如awk

您可以使用简单的cut呼叫:

 $ cat myfile.txt | cut -d"-" -f3- > myoutput.txt 

编辑:
一些解释,如评论中所要求的: cut根据给定的分隔符将一串文本分割成字段。
-d定义了分隔符,在这种情况下。
-f定义了要输出的字段。 在这种情况下,我们希望在第二个连字符之前消除所有内容,换句话说,返回第三个字段( 3- )。

其余的命令只是输出输出。 将文件cut ,然后将结果保存到输出文件。

或者,使用sed

 cat myfile.txt | sed -e 's/^.\+-//'