【发布时间】:2020-02-13 20:33:50
【问题描述】:
我在一个文本文件中有以下几行。我想删除最后一个 '_' 并在之后添加一个换行符。
>15_48499991_ENSG00000074803_C_G_G_CCAATCGCTTTCAAGTTAGTGTG
>15_48499991_ENSG00000074803_C_G_G_CAATCGCTTTCAAGTTAGTGTGA
>15_48499991_ENSG00000074803_C_G_G_AATCGCTTTCAAGTTAGTGTGAT
Desired output:
>15_48499991_ENSG00000074803_C_G_G
CCAATCGCTTTCAAGTTAGTGTG
>15_48499991_ENSG00000074803_C_G_G
CAATCGCTTTCAAGTTAGTGTGA
>15_48499991_ENSG00000074803_C_G_G
AATCGCTTTCAAGTTAGTGTGAT
我使用下面的 SED 查询来执行此操作。我无法找出查询中的问题。
sed 's/\_/'\n'/g'
【问题讨论】:
-
单引号不能嵌套。
-
如果您的
sed在\n替换部分中的换行符有问题,只需在此处键入文字换行符,或使用变量(但然后在sed命令周围使用双引号)。匹配最后一个_也可以使用_([^_]*)$POSIX ERE 完成。
标签: regex sed substitution