Как я могу переименовать много файлов одновременно?

Мне нужно переименовать группу файлов, чтобы исправить порядок их сортировки, поэтому мне нужно иметь возможность выполнять своего рода «поиск и замену», чтобы я мог заменять порции имен файлов одновременно.

Какие инструменты мне следует использовать? Я предпочитаю GUI, но рекомендация инструмента командной строки тоже подойдет.

44
задан 23 March 2018 в 17:33

17 ответов

Есть несколько, но я рекомендую gprename Install gprename , что является хорошим компромиссом между удобством использования и функциональностью.

Другие инструменты: переименование, krename Install krename , pyrenamer Install pyrenamer , cuteRenamer, ...

54
ответ дан 23 March 2018 в 17:33

Krename - это графический интерфейс KDE для переименования файлов, обычно встречающийся в большинстве менеджеров пакетов.

Этот ответ относится к удалению первых чисел, которые могут быть найдены в музыкальных файлах, таких как mp3. Но Krename также выполняет массовое переименование.

  1. Загружает выбранные файлы или папки. Krename загружает все файлы в выбранную папку, просто нажмите Открыть , не выбирая по отдельности все файлы.

  2. Перейдите на вкладку Место назначения , чтобы перезаписать или скопировать файлы в другую папку.

  3. Перейдите на вкладку Имя файла , затем на вкладку Расширенное имя файла .

     "Advanced Filename" image showing the default settings.

  4. Начните с удаления токена $ в шаблоне окно. Изменение происходит в окне Переименовано ниже. Имена файлов не отображаются, только расширения файлов.

    3. Image shows that the filenames have been removed, leaving the file extensions.

  5. Щелкните Вставить часть имени файла ... и выберите части имени файла, которые вы хотите сохранить. Эта операция будет включать все файлы, и изменения будут очевидны в окне Переименовано ниже.

    4. "Insert Part of Filename..." image showing how to select the filename by highlighting the preferred sections.

  6. Нажмите OK . Файлы переименовываются без начальных цифр.

    5. Final results showing.

  7. Наконец, нажмите Готово в правом нижнем углу.

0
ответ дан 23 March 2018 в 17:33

Лично я использую Ant Renamer с Wine, потому что ничто из того, что я пробовал (Métamorphose, PyRenamer, GPRename, KRename) не является таким же мощным, простым в установке и использовании. И это все еще FOSS, так что я не вижу проблемы.

0
ответ дан 23 March 2018 в 17:33

Для меня pyRenamer работал лучше всего. Ничто (к сожалению) не может сравниться с Total Commanders, встроенным в инструмент переименования. pyRenamer не интегрируется с Krusader, но, учитывая тот факт, что вы не используете часто используемые инструменты переименования, pyRenamer - очень хороший вариант.

0
ответ дан 23 March 2018 в 17:33

В Windows есть действительно хорошая программа для этого, которая называется Bulk Rename Utility. Вот URL: http://www.bulkrenameutility.co.uk/Main_Intro.php .

Существует версия Unicode для Windows 98, которая является переносимой. Я помещаю это в папку в моей системе Linux (Mint Maya), и когда я запускаю его через Wine, он работает как шарм. Графический интерфейс очень прост в использовании и очень гибкий.

0
ответ дан 23 March 2018 в 17:33

Если вы знакомы с Emacs, думаю, ничто не сравнится с Dired для этой задачи. Даже если вы не используете Emacs так часто, вы можете найти Dired удобным инструментом.

sudo aptitude установите emacs23-nox

Запустите режим Emacs Dired для каталога:

emacs -nw path/to/dir/

Теперь войдите в режим редактирования каталога:

C-x C-q (то есть Ctrl+x, а затем Ctrl+q)

Теперь вы можете редактировать имена файлов так же, как и редактировать текст в каждом обычном текстовом редакторе. Вы даже можете выбрать замену имён файлов, используя регулярные выражения (обратите внимание, что к сожалению Emacs использует другой синтаксис, чем PCRE)

Например, для переименования файлов со счетчиком (начиная с 1):
M-x replace-regexp (т.е. Alt+x, за которым следует строка "replace-regexp", набранная в минибуфере внизу экрана)
. Заменить регенерацию: DSCN\([0-9]+\).JPG
Replace with: \,(формат "P%04d.jpg" (1 + \#))

Для повторного использования счетчика в имени файла:
M-x replace-regexp
Replace regexp: DSCN\([0-9]+\).JPG
Replace with: \,(формат "P%04d. jpg" (строка с номером \1))

После завершения введите:

C-c C-c (т.е. Ctrl+c, а затем Ctrl+c)

Или же нажмите следующую последовательность, чтобы прервать ваши изменения:

C-c Esc (то есть Ctrl+c, за которым следует Esc)

3
ответ дан 23 March 2018 в 17:33

Ja izmantojat Nautilus un zināt, kā darbojas Nautilus skripti, varat izmantot nautilus-renamer .

1
ответ дан 23 March 2018 в 17:33

Если вам нравится оболочка и регулярные выражения perl, я бы рекомендовал переименовать. Это так же просто, как и имя.

5
ответ дан 23 March 2018 в 17:33

Métamorphose

https://github.com/metamorphose

может быть немного трудно обрабатывается, но действительно мощно!

7
ответ дан 23 March 2018 в 17:33

В командной строке также есть возможность использовать магию sed и оболочку:

ls *.c | sed "s#\(.*\)\.c#mv \0 \1.cpp#" | sh
0
ответ дан 23 March 2018 в 17:33

файловый менеджер thunar - это графический интерфейс с возможностью массового переименования

http://thunar.xfce.org/pwiki/documentation / bulk_renamer

он не является стандартным для Gnome, но может быть установлен через программный центр

4
ответ дан 23 March 2018 в 17:33

Мне очень нравится qmv из пакета renameutils . Это позволяет вам использовать ваш любимый (терминальный) текстовый редактор для переименования файлов. Я предпочитаю вызывать его с помощью -f do , что дает вам один столбец (по одной строке на файл) с именами файлов. В сочетании с мощью Vim он предоставляет вам все инструменты, необходимые для массового редактирования файлов.

http://www.nongnu.org/renameutils/

10
ответ дан 23 March 2018 в 17:33

Я обычно использую mmv, который основан на командной строке, и имеет несколько причудливый синтаксис выражений, но имеет тенденцию решать большинство моих проблем.

2
ответ дан 23 March 2018 в 17:33

Это инструмент, который я использую: rnm (man page) (more examples)

Some Usage:

rnm file-name -ns new-filename             # single file
rnm ./* -ns '/n//i/'                       # files will be sorted and indexed.
rnm ./* -rs '/search/new/g'                # 'search' in filenames will be replaced with 'new'
rnm ./* -ns '/fn//i/' -ss 'search'         # only files/directories which contain 'search' in their name will be indexed (renamed).
rnm ./* -ns '/fn//id/' -fo                 # file only mode, directories will be ignored.
rnm ./* -ns '/fn//id/' -fo -dp -1          # recursive to subdirectories all the way.

etc...
0
ответ дан 23 March 2018 в 17:33

Новая утилита пакетного переименования с графическим интерфейсом пользователя, работающая в Linux (она также работает на Mac и Windows), называется Inviska Rename .

enter image description here

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

Другие функции включают предварительный просмотр новых имен файлов и отмену пакетного переименования, что я считаю очень полезным.

Источник

0
ответ дан 23 November 2019 в 00:01

Кросс-платформенный файловый менеджер Double Commander (выпущенный под лицензией GNU GPL 2) включает в себя довольно мощный «Инструмент многократного переименования»:

doublcmd-multi-rename tool

Я использовал очень мощная Утилита массового переименования для Windows под WINE, но инструмент Double Commander помогает мне в этом больше всего.

0
ответ дан 5 January 2021 в 23:58

find -execdir rename

Это переименовывает файлы и каталоги с регулярным выражением, затрагивающим только базовые имена, например:

PATH=/usr/bin find . -depth -execdir rename "s/^find/replace/" '{}' \;

или затрагивающим только файлы:

PATH=/usr/bin find . -type f -execdir rename "s/^find/replace/" '{}' \;

Я объяснил это более подробно по адресу: https://stackoverflow.com/questions/16541582/find-multiple-files-and-rename-them-in-linux/54163971#54163971

1
ответ дан 5 January 2021 в 23:58

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

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