Thank you very much! Is it possible to get the result in an output file?
Hi all,
I have multiple blastp output (format 6) in a directory, I wish to calculate the number of hits with sequence identity of more than 40% for each output file, therefore, I have tried:
for i in *.tsv; do awk '$3>=40' $i | wc -l; done
However, this command only give me a list of number in the terminal without matching it with the blastp output, any modification that I can do so that I know the number belongs to which blastp output file? Thank you.
1 answer
You're welcome. Try this:
(for i in *.tsv; do echo -ne "${i}\t" && awk '$3>=40{print $2}' ${i} | sort -u | wc -l; done) > output.txt
The command working well, thank you again!
Hi,
May I know where can I find the manual for the meaning of all these command? I am new in this field and but have no clue where to find all these information. Really appreciate your help.
Hello fec2,
You can use man echo, man awk, man sort, and man wc.
I'd recommend "Ch3. Remedial Unix Shell" and "Ch7. Unix Data Tools" in the book: Bioinformatics Data Skills by Vince Buffalo. :-)
Log in to answer this question.
