#! /bin/bash set -e THREADS=${THREADS:-12} EXT=${EXT:-"fa"} if [ "$#" -ne 2 ]; then echo "Usage: $0 " echo "Perform MACSE alignment for each orthologous group" exit 1 fi ogs_dir=$(readlink -f "$1") out_dir=$2 mkdir -p "$out_dir" echo "Starting MACSE alignment of orthologous groups..." echo -n >macse.cmds for og_fasta in "$ogs_dir"/*."$EXT"; do og_name=$(basename "$og_fasta" ."$EXT") out_stem="$out_dir/$og_name" echo "macse -prog alignSequences -seq $og_fasta -out_AA ${out_stem}.pal -out_NT ${out_stem}.nal > ${out_stem}.log 2>&1" >>macse.cmds done xargs -t -P "$THREADS" -I cmd -a macse.cmds bash -c "cmd" && echo "MACSE alignment completed."