Универсальный способ переименовать все файлы в каталоге [дубликат]

] Я делал простые bash-функции для этого с помощью find -exec или парсинга ls, или использования bash globbing и т. Д. Каждый раз, когда у меня возникала большая проблема, и мне приходилось переходить к новому методу один раз, когда он был аргументом список слишком длинный. В другой раз файлы, которые уже имели имя типа 2 , были перезаписаны, когда другой файл переименовывался в 2 .

Один раз это была проблема с юникодом, один раз с пробелом в имени файла, один раз с * или и в имени файла и так далее. Итак, я подумал, что приду сюда и попрошу вас, люди, о наиболее эффективном и надежном универсальном способе переименовать все файлы в каталоге, чтобы они имели последовательные имена , несмотря ни на что! . Независимо от длины имен файлов, их исходного имени или расширения, а также наличия в них символов, отличных от ASCII.

Итак, мои требования:

  1. Чтобы он работал с длинными именами файлов.
  2. Что он работает с символами Юникода.
  3. Это работает, если в файлах есть пробелы или специальные символы.
  4. Что он не перезаписывает один файл в другом.
  5. Чтобы это было как можно быстрее: D
3
задан 15 February 2018 в 22:19

1 ответ

Если Ваша Ubuntu не является сервером, не рассматривают его как один. pyRenamer из репозиториев Ubuntu по умолчанию имеет все функции, которые Вы ищете включая поддержку regex, и так как это - программа GUI, которую Вы не должны повреждать голову, пытающуюся выяснять, как использовать его. При наличии затруднений при записи регулярного выражения можно получить объяснение того, что regex делает в RegExr. Не позволяйте себе становиться смещенными против программ GUI, которые были созданы для вариантов использования как это.

pyRenamer доступен из репозиториев Ubuntu по умолчанию в Ubuntu 16.04 и ранее. В Ubuntu 18.04 и позже pyRenamer был заменен GPRename.

2
ответ дан 1 December 2019 в 16:53

Другие вопросы по тегам:

Похожие вопросы: