Предполагая, что
искомое имя - «тело» всегда после первой точки, всегда присутствует расширение .bam, каталог «плоский» и не имеет подкаталогов] Это решение python должно выполнить эту работу. Количество разделов может меняться, оно все равно будет работать:
#!/usr/bin/env python3
import os
import shutil
import sys
directory = sys.argv[1]
for item in os.listdir(directory):
if not item.startswith("."):
edit = item.split("."); newname = (".").join([edit[1], edit[-1]])
if len(edit) > 2:
shutil.move(directory+"/"+item, directory+"/"+newname)
Скопировать его в пустой файл, сделать его исполняемым (запустить его без префикса python3) и запустить его командой:
</path/to/script> <directory_with_files>
Так что:
monkey.banana.peanut.bam
становится
banana.bam
и
monkey.apple.peaunt.another_string.and_alot_more.bam
становится
apple.bam
, а
something.bam
оставлен один.