I have a fasta file with reads that I would like to trim using values, in bold, in column 5 in a second file. I have scripts to trim individual reads, but am having trouble iterating using the file to trim all the reads in the fasta.file which contains millions of reads.
File read1 length read2 length difference trim this many bases from fasta.file read3 ...
b7d6627e-d0ec-47e3-b370-d067814e9b4f 148708 >7eed3495-d2ff-4e2c-b82d-ba1eacd5a370 152345 3637 18 058b3785-b29d-4b30-b7b3-01a66f5216d3 161760 >5d73fc6a-c94d-4e2b-8ef4-6525c9743aa0 166087 4327 2163.5
fasta.file
7eed3495-d2ff-4e2c-b82d-ba1eacd5a370 runid=bccdb97f1a248f2721cbeab07b429904d3dd466a read=1093 ch=236 star t_time=2018-03-22T22:25:23Z TGAGGGAAAGGTGGTGCTTTGTGCTGGTGGTGGTGGCGGAGTCGCTGGTGGTGGTGCTGGGTGCAGGGGCCAGCCGGGGCGGAGTTGGGTCTCTTAAAGCCCGCGC ACGCCATTCAATGCGTTTTGTTTTTATTTGTTGTCGTCTTAACTGCCGATCACATTCAATGTGTGTTTGTGCGTCATTGTTTCATTTATTTTTATAGTTTATTAAA
I am having trouble writing a loop to do this.
I can grep a read and trim but it trims the first line not the second line.
grep -A1 ">7eed3495-d2ff-4e2c-b82d-ba1eacd5a370" | sed '/^>/{s/[18].*//;s/^.* />/}' Nondys_reads_to_trim.fasta > fasta.trim.junk
#!bin/bash
IFS=$'\n'
while read fasta.file file1
do
grep -A1 ">7eed3495-d2ff-4e2c-b82d-ba1eacd5a370"
sed '/^>/{s/[$5].*//;s/^.* />/}' > new.fasta.file
desired output
7eed3495-d2ff-4e2c-b82d-ba1eacd5a370 runid=bccdb97f1a248f2721cbeab07b429904d3dd466a read=1093 ch=236 star t_time=2018-03-22T22:25:23Z TTGTGCTGGTGGTGGTGGCGGAGTCGCTGGTGGTGGTGCTGGGTGCAGGGGCCAGCCGGGGCGGAGTTGGGTCTCTTAAAGCCCGCGC ACGCCATTCAATGCGTTTTGTTTTTATTTGTTGTCGTCTTAACTGCCGATCACATTCAATGTGTGTTTGTGCGTCATTGTTTCATTTATTTTTATAGTTTATTAAA