#!/bin/bash

# 染色体ごとのファイルを処理する関数
process_chromosome_file() {
    local chr_num=$1
    local input_file="chr_${chr_num}_molecular_annotation.tsv.gz"

    echo $chr_num start

    # 解凍
    gunzip "$input_file"

    # 解凍後のファイル名を取得 (".gz" を取り除く)
    local base_file="${input_file%.gz}"

    # chr列に"chr"を追加
    awk -v chr="chr$chr_num" 'BEGIN {FS=OFS="\t"} {if (NR > 1) $3 = chr; print}' "$base_file" > temp_file.tsv

    # 元のファイルに上書き
    mv temp_file.tsv "$base_file"

    # 再圧縮
    bgzip "$base_file"

    # 元のファイル名に戻す
    mv "$base_file.gz" "$input_file"

    # tabixを実行
    tabix -S1 -s3 -b4 -e4 "$input_file"

    echo $chr_num finished 
}

# chr1からchr22までの範囲を処理
for i in $(seq 18 22); do
    process_chromosome_file $i
done

process_chromosome_file "X" 
process_chromosome_file "Y" 
process_chromosome_file "MT" 

echo "all completed"
