我必须要求在" | ^#"之后替换文件中的字符。图案。我能怎么做

时间:2018-02-13 13:38:52

标签: unix sed

我需要在文件中"|^#"模式后替换字符。

我怎样才能使用" Sed" UNIX命令? 我的示例文件就像

    11~^6~^BRD_ACT_EVT_MG~^2017-11-29
21~^EVENT_ID~^SUBJECT~^TOPIC~^SENDER_PARTY_ID~^LANGUAGE~^ORIG_CHANNEL_CD~^CREATE_TS
782~^201711082887~^Br~^GEN~^AC1~^EN~^MB~^29-NOV-17 09.11.47.731000 AM|^#~1
782~^201771082877~^test~^GEN~^AC3~^EN~^MB~^29-NOV-17 02.38.16.386000 AM|^#~2
99~^6~^BRD_ACT_EVT_MG~^05:23:41~^2

输出应为:

    11~^6~^BRD_ACT_EVT_MG~^2017-11-29
21~^EVENT_ID~^SUBJECT~^TOPIC~^SENDER_PARTY_ID~^LANGUAGE~^ORIG_CHANNEL_CD~^CREATE_TS
782~^201711082887~^Br~^GEN~^AC1~^EN~^MB~^29-NOV-17 09.11.47.731000 AM|^#
782~^201771082877~^test~^GEN~^AC3~^EN~^MB~^29-NOV-17 02.38.16.386000 AM|^#
99~^6~^BRD_ACT_EVT_MG~^05:23:41~^2

1 个答案:

答案 0 :(得分:1)

要仅删除|^#,以下内容可能对您有所帮助:

sed 's/|^#//g'  Input_file

如果你想删除从|^#到最后一行的所有内容,那么以下内容可以帮助你:

sed 's/|^#.*//'  Input_file