我遇到了一个制作while循环的问题(是的,我是新来的......)。
我有一个文件$ lines_to_find.txt,其中包含我想在另一个(大)文件$ file_to_search.fasta中找到的名称列表。 当在file_to_search.fasta中找到lines_to_find.txt中的行时,带有搜索命中的行我想打印到一个新文件:output_file.fasta。
所以我有一个类似于grep的命令,它接受序列(因为它是大文件中的什么),并将它们打印到一个新文件:
obigrep -D SEARCHWORD INPUTFILE.fasta> OUPUTFILE.fasta
现在我希望将searchword替换为文件lines_to_find.txt,并且每行应该被读取并与file_to_search.fasta匹配。输出最好是一个文件,包含文件lines_to_find.txt中所有行的序列命中。
我试过了:
读取行
做
obigrep -D'$ line'file_to_search.fasta>> outputfile.fasta
完成< lines_to_find.txt
但我的outputfile只返回空。
我做错了什么? 我只是构建while读取循环错了吗? 还有其他方法吗?
我对所有建议持开放态度,因为我是新手,请指出明显的乞讨者缺陷。