2

Я пытаюсь переименовать файлы .srt. Файлы в настоящее время имеют имена, такие как это:

StargateSG1.s02e19.Один.Ложь.Шаг.AC3.DVDRip.DivX-AMC.srt

Я хотел бы, чтобы полученный файл был:

StargateSG1.s02e19.srt

После изучения переименования какое-то время я придумал команду:

переименовать -n 's/(\d {19})/$ 1.srt/' * .srt

Что должно сохранить первые 19 символов и удалить остальные, а затем добавить .srt к первым 19 символам. Это не работает, и я в тупике. Я искал это и не могу найти никакой помощи, насколько я могу судить, это должно работать. Любая помощь будет принята с благодарностью. Спасибо

1 ответ1

3
$ rename -n 's/^(.{18}).*$/$1.srt/' *.srt
StargateSG1.s02e19.One.False.Step.AC3.DVDRip.DivX-AMC.srt renamed as StargateSG1.s02e19.srt

У вас было 2 проблемы:

  1. \d обозначает любую цифру, пока вам нужно . который является любым персонажем.
  2. Вы не соответствовали остальной части имени файла, поэтому операция замены не удалила бы его.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .