我有一个包含数字列表的文件。我有第二个文件与各种条目和几个领域。
我想要做的是让他们第12场等于第1号的所有行并将其放置在一个新的文件,然后到第二个数,依此类推。
我写了一个班轮是有道理的,但我不明白,为什么它不会工作。
这是一个数字的列表:
猫truncations_list.txt
3
318
407
412
7
与要排序的条目的文件是:
M00970:45:000000000-A42FD:1:1101:14736:1399 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCATCGGCNGGAGTAACTATGACTCTNTTAAGGAGGACCAATATGAACCANACNNNNNNNNNACTNTATCTAGGGTTCCCTGCACAGTATGTGNCC 79 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCATCGGCNGGAGTAACTATGACTCTNTTAA 65 GGAGGACCAATATGAACCANACNNNNNNNNNACTNTATCTAGGGTTCCCTGCACAGTATGTGNCC 79S65M 1 81 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCATCGGCNGGAGTAACTATGACTCTNTTAAGG -2 318
M00970:45:000000000-A42FD:1:1101:15371:1399 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCAACGGCNGGAGTAACTATGACTCTNTTAAGGAGTCGGTGTTCACATGCNATNNNNNNNNNCAGNCGAACTTGATGAAGAACGTCGACGTGTNGG 83 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCAACGGCNGGAGTAACTATGACTCTNTTAAGGAG 61 TCGGTGTTCACATGCNATNNNNNNNNNCAGNCGAACTTGATGAAGAACGTCGACGTGTNGG 83S61M 1 81 TGCCCAGTGCTCTGAATGTNNNNNTGAAGAAATTCAAGTAAGCGCGGGTCAACGGCNGGAGTAACTATGACTCTNTTAAGG 2 407
这是我的命令:
file="truncations_list.txt"
while read line; do awk '$12==$line' R2_Output.txt >reads_$line.txt ; done <"$file"
该命令将创建所有文件“reads_412.txt”等,但所有文件都是空的。
我感谢您的帮助!
+1但我认为重定向应该'''而不是'> >'或者你必须确保文件不首先存在。 – 2013-05-02 12:26:36
谢谢,这比一遍又一遍地读取文件更有意义。辉煌:) – 2013-05-02 16:03:18
@EdMorton是的,对!谢谢! – 2013-05-02 16:03:34