我有一个带有 5 列的制表符分隔文本文件,我希望每一行都是它自己的 txt 文件,其中包含来自第 2-5 列的信息并以第 1 列命名。
例如,我的 txt 文件有数百行与此类似:
sample1name_oligos 引物 forwardseq reverseseq sample1name
sample2name_oligos 引物 forwardseq reverseseq sample2name
我想要一个名为 sample1name_oligos 的 txt 文件,如下所示:
引物 forwardseq reverseseq sample1name
和一个名为 sample1name_oligos 的 txt 文件,如下所示:
引物 forwardseq reverseseq sample1name
我试过两种方法:
awk '{print substr($0,match($0,$2)) >> ( $1 ".txt" )}' 文件名
这适用于我制作的测试文件(5 行),但是当我在 100 多行文件上运行它时,我得到了前 17 个文件,然后出现错误:
awk: File18.txt 使打开的文件过多,输入记录号 18,文件 myfile.txt 源行号 1
我删除了第 18 行并重试并得到相同的错误。我删除了前 20 行并重试并得到相同的错误。
猫 myfile.txt | 在阅读 LINE 时;做 echo …