Рейтинг:1

Есть ли инструмент переименования (для Ubuntu 18.04 Mate), который также может работать с именами папок?

флаг in

Я новичок в Linux, использую Ubuntu 18.04 Mate. Когда мне нужно выполнить более сложные задачи по переименованию файлов, я предпочитаю использовать KRename (версия с графическим интерфейсом, которая устанавливается с помощью apt-get). Но часто я также хотел бы переименовать имена папок (этот вопрос НЕ касается пакетного переименования файл имена). Похоже, что KRename (GUI) на это не способен. Поэтому мне интересно, есть ли инструмент для достижения этого (как новичок, я предпочитаю не писать сценарии).

sancho.s ReinstateMonicaCellio avatar
флаг pl
https://www.makeuseof.com/batch-rename-files-in-linux/
sancho.s ReinstateMonicaCellio avatar
флаг pl
Или `тунар-Б`. См. также https://ostechnix.com/how-to-rename-multiple-files-at-once-in-linux/
guiverc avatar
флаг cn
Я бы использовал терминал и просто использовал `mv` (обычно проще, чем `переименовать`, но я могу использовать и это для некоторых). Вы не дали много деталей; т.е. какую ОС, версию и рабочий стол вы используете; упоминание `krename` заставляет меня думать о KDE, где у вас также есть несколько вариантов графического интерфейса, но вы не сказали, почему они вам не подходят (например, `dolphin` и т. д.).
Shakesbeer avatar
флаг in
@guiverc: я отредактировал вопрос, чтобы дать более подробную информацию. Я использую Ubuntu 18.04 Mate. Я новичок, мне проще и быстрее использовать графический интерфейс, чем писать скрипт или использовать командную строку, когда мне нужно переименовать десятки файлов (и папок). Как новичок, я также мало знаю об альтернативах, я даже не знаю, существуют ли разные графические интерфейсы для KRename.
muru avatar
флаг us
"Мне нужно переименовать десятки файлов (и папок)"... это называется "пакетное переименование"
Shakesbeer avatar
флаг in
@muru: вопрос не в **файлах**, а в **папках**. В этом-то и дело.
muru avatar
флаг us
@Shakesbeer Для переименования нет никакой разницы. *В этом-то и дело.
Shakesbeer avatar
флаг in
@muru: Это может быть верно для командной строки, но не для KRename GUI: когда я добавляю папку, как я могу заставить ее обрабатывать имя папки вместо добавления содержимого папки (имен файлов в ней) в список объектов для переименования?
guiverc avatar
флаг cn
https://en.wikipedia.org/wiki/Everything_is_a_file (базовая теория 1970 года в Unix, которая применяется в современном GNU/Linux точно так же, как и тогда) Также обратите внимание, что Ubuntu-MATE является *разновидностью* Ubuntu, пришли с 3 годами жизни, которые закончились в апреле-2021; см. https://ubuntu-mate.community/t/ubuntu-mate-18-04-lts-reaches-end-of-life/23966
Shakesbeer avatar
флаг in
@guiverc: я не просил теоретического введения в то, как информация организована в файловой системе или что-то в этом роде. Пока - в этом случае - KRename GUI не обрабатывает файлы и папки одинаково, разница ЕСТЬ. И эта разница приводит к моему вопросу.
guiverc avatar
флаг cn
Вы можете использовать `caja`, который поставляется с Ubuntu-MATE, и будет использовать меньше ресурсов (поскольку он разделяет библиотеки/инструменты с вашим рабочим столом, в отличие от `krename`). Если вы в сети, не забудьте использовать `ubuntu-support-status`, чтобы решить для себя риски использования EOL OS (части вашей системы, общие с Ubuntu Desktop 18.04 LTS, по-прежнему поддерживаются; MATE, `krunner `и т.д.)
muru avatar
флаг us
@Shakesbeer https://www.kubuntuforums.net/showthread.php/72944-Krename-Renaming-Folders?p=409594&viewfull=1#post409594?
sancho.s ReinstateMonicaCellio avatar
флаг pl
Нашли ли вы что-нибудь из того, что было опубликовано, полезным? Всегда полезно давать обратную связь.
Shakesbeer avatar
флаг in
Я сделаю несколько тестов и сообщу о результатах, как только найду время, пожалуйста, наберитесь терпения.
sancho.s ReinstateMonicaCellio avatar
флаг pl
... есть отзывы?
Рейтинг:0
флаг jp

переименовать может переименовывать как файлы, так и каталоги

Инструмент командной строки подходит для такого рода задач. Я могу показать, как это работает, на примере:

Создайте два тестовых каталога

$ mkdir арендатест1
$ mkdir арендатест2

Сделать тестовый файл

$ сенсорный прокаттест3

Проверь это переименовать делает то, что вы ожидаете, с «пробным прогоном», используя опцию

$ rename -n 's/ren/rename-/' арендатест*
переименовать (ренттест1, переименовать-тест1)
переименовать (аренда-тест2, переименовать-тест2)
переименовать (аренда-тест3, переименовать-тест3)

Когда он выглядит хорошо, удалите и сделай это

$ rename 's/ren/rename-/' rentest*

Убедитесь, что это сработало как для файла, так и для каталогов.

$ ls -ld переименовать*
drwxrwxr-x 2 sudodus sudodus 4096 11 августа 13:47 переименовать-тест1
drwxrwxr-x 2 sudodus sudodus 4096 11 августа 13:47 переименовать-тест2
-rw-rw-r-- 1 sudodus sudodus 0 авг 11 13:48 переименовать-тест3

Узнайте обо всех возможностях в

человек переименовать

Моя версия rename устанавливается через пакет переименовать из репозитория вселенная, и это Perl-скрипт Ларри Уолла.

Рейтинг:0
флаг pl

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

Я прямо цитирую здесь только одну опцию графического интерфейса (поскольку вы использовали KRename), которая тунар -B

введите описание изображения здесь

Вы можете проверить другие альтернативы в источниках ниже.

при использовании CLI вы всегда можете «обернуть» свою команду с помощью for d в $(find . -type d <другие параметры>) ; выполнить <ваши операции с "${d}", включая переименование> ; сделано.

Источники:

  1. https://www.makeuseof.com/batch-rename-files-in-linux/
  2. https://ostechnix.com/how-to-rename-multiple-files-at-once-in-linux/
raj avatar
флаг cn
raj
Использование цикла for, как вы предложили, не рекомендуется. Вместо этого следует использовать опцию `-exec` для `find`: `find . -тип д -exec \;`
sancho.s ReinstateMonicaCellio avatar
флаг pl
@raj - я действительно часто использую ваше предложение. Но то, что опубликовано, отлично работает во многих случаях. https://stackoverflow.com/a/9612232/2707864 предоставляет дополнительную информацию. Если бы вы могли добавить причины/случаи, когда `for... $(find...)` не рекомендуется, это очень поможет.
raj avatar
флаг cn
raj
Это вызовет проблемы, если имена каталогов содержат пробелы или другие символы, которые могут быть интерпретированы как разделители с помощью `for`.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.