Remove/delete sequences by ID from multifasta I have a fasta file like this:

&gt;Id1
ATCCTT
&gt;Id2
ATTTTCCC
&gt;Id3
TTTCCCCAAAA
&gt;Id4
CCCTTTAAA


I want to delete sequences that have the following IDs.

Id2
Id3


The IDs are in a .txt file, and the text file will be used to match and delete those sequences. 

My output should be a fasta file like this

&gt;Id1
ATCCTT
&gt;Id4
CCCTTTAAA


But I want it with awk and/or sed and/or bash (no python or perl).
How can I do it?
If you want to learn how to do things with command-line tools, you can linearize the FASTA with awk, pipe to grep to filter for items of interest named in patterns.txt, then pipe to tr to delinearize:

$ awk '{ if ((NR&gt;1)&amp;&amp;($0~/^&gt;/)) { printf("\n%s", $0); } else if (NR==1) { printf("%s", $0); } else { printf("\t%s", $0); } }' in.fa | grep -Ff patterns.txt - | tr "\t" "\n" &gt; out.fa


This will work on multiline FASTA.