【发布时间】:2017-12-11 14:47:39
【问题描述】:
我想从另一个列表中删除一个列表中包含的所有内容以及下一行。例如: list2.txt 包含:
A
D
list1a.txt 包含:
>A
AAAAA
>B
GGGGG
>C
CCCC
>D
TTTT
我希望得到以下输出:
>B
GGGGG
>C
CCCC
其中 >A 和 >D 以及它们下面的行已被删除。
我试过了:
input=$1
file_to_edit=$2
while IFS= read -r var
do
echo $var
sed "s/$var//g" $file_to_edit >f2.txt
done < "$input"
f2.txt 返回:
>A
AAAAA
>B
GGGGG
>C
CCCC
>
TTTT
正如预期的那样,它返回删除的“D”,而不是 A,而不是它们下面的行。 我需要删除第一个列表中包含的任何行 第二个文件,以及它下面的行。
【问题讨论】: