# filter directly for specific words or prefixes in FASTA sequence IDs
seqkit grep -r -p "mitochondrion" genes.fasta > gene_subset.fasta
# extract a subset of sequences using an ID list
seqkit grep -f subsetIDs.txt genes.fasta > gene_subset.fasta
# remove sequences based on an exclusion ID list
seqkit grep -v -f bad_geneIDs.txt genes.fasta > gene_clean.fasta
# get a list of all sequence IDs
# example: get all geneIDs from a fasta file
cat genes.fasta | grep '>' | cut -f 1 -d ' ' | sed 's/>//g' > list_of_geneIDs.txt
# get subset IDs: create a text-file with selected sequence IDs
# Example: select top 3 genes as subset
head -3 list_of_geneIDs.txt > subsetIDs.txt
gene_001
gene_002
gene_003
# extract subset of gene sequences based on list of sequence IDs in .txt file
seqtk subseq genes.fasta subsetIDs.txt > gene_subset.fasta
# install Seqtk (Linux/Ubuntu)
sudo apt-get install seqtk