У меня есть список путей к файлам в формате:
/data/nicotine_sensi/bam/9-2_box_1_S23_starAligned.sortedByCoord.out.bam
/data/nicotine_sensi/bam/9-2_box_3_S101_starAligned.sortedByCoord.out.bam
/data/nicotine_sensi/bam/9-3_box_1_S24_starAligned.sortedByCoord.out.bam
/data/nicotine_sensi/bam/9-3_box_3_S102_starAligned.sortedByCoord.out.bam
Я хочу ввести параллельную команду gnu, чтобы как предопределенные строки замены, так и строка замены perl или --plus
работать в то же время, но я не смог найти решение в учебниках . В идеале, {/...}
и {%_starAligned}
оба будут работать вместе, чтобы произвести:
9-2_box_1_S23
9-2_box_3_S101
9-3_box_1_S24
9-3_box_3_S102
, однако самое близкое, что я получаю, это:
parallel --rpl '{..} s:/data/nicotine_sensi/bam/::;s:_starAligned.sortedByCoord.out.bam::' \
echo {..} ::: $(ls $bam_dir/*.bam)
, который является грязным и не очень портативным для другие каталоги.