【发布时间】:2020-10-10 06:52:04
【问题描述】:
我有一个 list.txt,其中包含以下几行。
Primer_Adapter_clean_KL01_BOLD1_100_KL01_BOLD1_100_N701_S507_L001_merged.fasta
Primer_Adapt_clean_KL01_BOLD1_500_KL01_BOLD1_500_N704_S507_L001_merged.fasta
Primer_Adapt_clean_LD03_BOLD2_Sessile_LD03_BOLD2_Sessile_N710_S506_L001_merged.fasta
现在我想只抓取第 4 个下划线和第 7 个下划线之间的子字符串,使其如下所示
BOLD1_100_KL01
BOLD1_500_KL01
BOLD2_Sessile_LD03
我尝试了下面的 awk 命令,但我想我弄错了。这里的任何帮助将不胜感激。如果这可以通过 sed 实现,我也会对该解决方案感兴趣。
awk -v FPAT="[^__]*" '$4=$7' list.txt
【问题讨论】: