Как вывести результат sed/samtools в новый каталог
У меня есть следующая команда sed, которая изменяет имя хромосомы:
for file in /myoldpath/*.bam; do filename=`echo $file | cut -d "." -f 1`; samtools view -H $file | sed -e 's/SN:\([0-9XY]\)/SN:chr\1/' -e 's/SN:MT/SN:chrM/' | samtools reheader - $file > /mynewpath/${filename}_chr.bam; done
Мой вопрос: как вставить результат в новый путь, сохраняя при этом переменную $filename как часть каждого нового имени файла? Он всегда вставляет результат в /myoldpath/ или буквально "filename.chr.bam" в /mynewpath/. я что-то упустил в синтаксисе этой части $file > /mynewpath/${filename}_chr.bam
?
любая помощь будет оценена
1 ответ
Решение
Попробуйте изменить имя файла = echo $ file | cut -d "." -f 1; to filename = $ (echo $ file | rev | cut -d "/" -f 1 | rev | cut -d "." -f1);