This commit is contained in:
2025-11-25 00:28:51 +08:00
commit eb3f16c30e
406 changed files with 91653 additions and 0 deletions
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p msa
echo -n > mafft.cmds
for i in ogs/*.fa ; do
j=$(basename "$i")
echo "linsi --quiet $i > msa/$j" >> mafft.cmds
done
xargs -t -P 8 -I cmd -a mafft.cmds bash -c "cmd"
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p hmms
echo -n > hmmbuild.cmds
for i in msa/*.fa ; do
j=$(basename "$i")
echo "hmmbuild -o hmms/${j}.hmmbuild.out --amino hmms/${j}.hmm $i" >> hmmbuild.cmds
done
xargs -t -P 8 -I cmd -a hmmbuild.cmds bash -c "cmd"
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p hmmsearch
echo -n > hmmsearch.cmds
for i in hmms/*.hmm ; do
j=$(basename "$i")
echo "hmmsearch --tblout hmmsearch/${j}search.tblout $i ../../01.reference/Zju.pep.fa > hmmsearch/${j}search.rawout" >> hmmsearch.cmds
done
xargs -t -P 8 -I cmd -a hmmsearch.cmds bash -c "cmd"
+8
View File
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p pep_aln
echo -n > mafft.cmds
for i in raw_ogs/pep/*.fa; do
j=$(basename "$i")
echo "linsi --quiet $i > pep_aln/${j/.fa/.pal}" >> mafft.cmds
done
xargs -t -P 8 -I cmd -a mafft.cmds bash -c "cmd"
+8
View File
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p cds_aln
echo -n > pal2nal.cmds
for i in pep_aln/*.pal; do
j=$(basename "$i")
echo "pal2nal.pl $i raw_ogs/cds/${j/.pal/.fa} -output fasta > cds_aln/${j/.pal/.nal}" >> pal2nal.cmds
done
xargs -t -P 8 -I cmd -a pal2nal.cmds bash -c "cmd"
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p trimed_nal
echo -n > trimal.cmds
for i in cds_aln/*.nal ;do
j=$(basename "$i")
echo "trimal -in $i -out trimed_nal/${j/.nal/.trimed.fa} -automated1 -resoverlap 0.5 -seqoverlap 50" >> trimal.cmds
done
xargs -t -P 4 -I cmd -a trimal.cmds bash -c "cmd"
+8
View File
@@ -0,0 +1,8 @@
#! /usr/bin/env bash
mkdir -p fasttree
echo -n > fasttree.cmds
for i in trimed_nal/*.trimed.fa ;do
j=$(basename "$i")
echo "FastTree -nt -gtr -quiet $i > fasttree/${j/.trimed.fa/.tree}" >> fasttree.cmds
done
xargs -t -P 8 -I cmd -a fasttree.cmds bash -c "cmd"
+11
View File
@@ -0,0 +1,11 @@
#! /usr/bin/env bash
mkdir -p treeshrink
for i in trimed_nal/*.trimed.fa; do
j=$(basename "$i")
mkdir -p treeshrink/"${j/.trimed.fa/}"
cd treeshrink/"${j/.trimed.fa/}" || exit 1
ln -s ../../fasttree/"${j/.trimed.fa/.tree}" input.tree
ln -s ../../"$i" input.fasta
cd ../../
done
run_treeshrink.py -i treeshrink/ -t input.tree -a input.fasta > treeshrink.log
+12
View File
@@ -0,0 +1,12 @@
#! /usr/bin/env bash
total_taxon=11
min_seq_length=300
mkdir -p final_ogs
for i in treeshrink/* ; do
j=$(basename "$i")
seqlen=$(seqkit fx2tab -C ATCG "$i"/output.fasta | awk '{print $3}' | sort -n | head -n 1)
seqnum=$(grep -c ">" "$i"/output.fasta)
if [[ $seqnum -eq $total_taxon && $seqlen -ge $min_seq_length ]]; then
cp -l "$i"/output.fasta final_ogs/"${j}.fa"
fi
done