#!/usr/bin/env bash
set -euo pipefail

indir="/BLUES/eric/ONT/MAPQ_bam"
chrom_sizes="/BLUES/eric/WGBS/hg38.chrom.sizes"

cd "$indir"

for f in *.MAPQ10.primary.onC.methylC.gz; do
  sample=${f%.gz}

  echo "Indexing $f"

  # Sort, bgzip, and tabix-index
  zcat "$f" \
    | awk 'BEGIN{OFS="\t"} NF>=7 && $2 ~ /^[0-9]+$/ && $3 ~ /^[0-9]+$/ && $3>$2 {print}' \
    | bedtools sort -faidx "$chrom_sizes" -i - \
    > "${sample}.sorted.tmp"

  bgzip -f "${sample}.sorted.tmp"

  mv "${sample}.sorted.tmp.gz" "$f"

  tabix -f -p bed "$f"
done

echo "Done:"
ls -lh *.MAPQ10.primary.onC.methylC.gz *.MAPQ10.primary.onC.methylC.gz.tbi
