LINUX.ORG.RU
ФорумTalks

Nomenus-rex will make your filenames go brrrrr!

 , , ,


0

2

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

Графического интерфейса не имеет, настраивается с помощью очень простого и очевидного конфига. Пример конфига есть в документации.

Не тестировалась. На моей машине, на моей ФС, с моим конфигом и с моими файлами вроде бы работает.

Лицензия: GPLv3

Код тут: https://github.com/ANGulchenko/nomenus-rex/

Чем лучше других аналогичных программ? Когда я столкнулся с необходимостью регулярного переименования кучи файлов, то я ознакомился с тем что есть из-под Линукса. Перебрал штук 5 утилит из загугленного списка a la «лучшие утилиты для переименования». Ни одна не понравилась. А моя утилита мне нравится. Этим она и лучше.

P.S. Что за nomenus такой? Изначально было Nomen – имя(скорее фамилия) на латинском. Но все, кто видел название, читали как английское «no men» и делали круглые глаза. Поэтому вот так.



Последнее исправление: hobbit (всего исправлений: 2)

А чем этот лучше скрипта на баше? Т.е. даже так спрошу: нафига нужны эти утилиты?

seiken ★★★★★
()
Ответ на: комментарий от seiken

Скрипт на баше ещё нужно написать. Если у тебя уже есть такой скрипт, то тебе, очевидно, такая программа не нужна.

Usruser
() автор топика
Ответ на: комментарий от Usruser

Ну вобщем юникс вей это копировать файлы скриптом либо на баше, либо перл/питон, потому что что-то из этого есть на любом десктопе общего назначения. А собирать ради этого прогу на c++ из сторонней репы…

seiken ★★★★★
()
Ответ на: комментарий от seiken

юникс вей это

love is

Unixway не имеет никакого отношения к скриптам и вообще совсем о другом.

Если проблема со сборкой, то можешь скачать с GitHub уже собранную для AMD64 версию.

Usruser
() автор топика
Последнее исправление: Usruser (всего исправлений: 1)
Ответ на: комментарий от Usruser

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

seiken ★★★★★
()
Ответ на: комментарий от seiken

Т.е. вместо «просто взять и переименовать» ты предлагаешь обложиться башем, авсом и чем-то ещё и ковырять это всё пока оно не заработает, а потом результирующий скрипт выбросить, поскольку он был написан для выполнения одной конкретной задачи и коряв как корни дерева бонсай?

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

Usruser
() автор топика
Ответ на: комментарий от Usruser

Скрипт на баше ещё нужно написать

У find есть параметр exec.

upcFrost ★★★★★
()
Ответ на: комментарий от Usruser

Объясни пожалуйста на простом примере что во что ты переименовывал. На жидхаб сходил, правила посмотрел, случаев для применения не придумал.

imul ★★★★★
()
Ответ на: комментарий от imul

Простой пример: у тебя есть дерево ФС с кучей поддиректорий различной вложенности и файлов. Тебе нужно скопировать все эти файлы в одну директорию.

Эта утилита позволит тебе это сделать чисто и аккуратно. Даже в случае если имена файлов одинаковы в различных поддиректориях.

Usruser
() автор топика
Ответ на: комментарий от seiken

либо на баше, либо перл/питон, потому что что-то из этого есть на любом десктопе общего назначения

Это ужасно. И ты не прав, это есть далеко не везде. Вобщем, если хочешь переносимый везде скрипт то лучше делать для /bin/sh. Если хочешь нормально работающую системную прогу - на Си. У автора не совсем Си, но может со временем он и его выучит.

firkax ★★★★★
()
Ответ на: комментарий от firkax

Это ужасно. И ты не прав, это есть далеко не везде.

Это где нет перла, баша и питона? И почему там должен быть g++ или gcc?

seiken ★★★★★
()
Ответ на: комментарий от Usruser

Я даже не представляю зачем мне это нужно будет делать.
Дай пример без обобщённых коней в вакууме.

imul ★★★★★
()
Ответ на: комментарий от Usruser

Я знаю. Но, вдруг в будущем я вконец свихнусь и она мне понадобится, так я буду хотя бы знать зачем.

imul ★★★★★
()
Ответ на: комментарий от imul

Название темы почитай! vim делает би-би, а номенус-рекс делает бррр. Вот когда тебе нужно будет сделать бррр, то ты вспомнишь об этой утилитке. А пока бибикай отсюда.

Usruser
() автор топика
Ответ на: комментарий от Usruser

Вот когда тебе нужно будет сделать бррр

Боюсь, что мне для этого придётся окончательно рехнуться как минимум.

то ты вспомнишь об этой утилитке

И тогда мне будет точно не до утилиток.

Но мне интересно, как ты смог дойти до такой жизни.

imul ★★★★★
()
Ответ на: комментарий от seiken

Ну ты первый завёл речь про «десктоп общего назначения», угадай какая там ОС будет стоять в 90% случаев.

Но пойдём в другую сторону - от ширпотреба к качественному. Видим FreeBSD. Так вот, там в базовой системе этого всего тоже нет. А вот компилятор - есть (правда, увы, уже не gcc а дурацкий clang, но задачу он выполнит).

firkax ★★★★★
()
Ответ на: комментарий от firkax

Ну ты первый завёл речь про «десктоп общего назначения», угадай какая там ОС будет стоять в 90% случаев.

Круто. Только в репе нет виндовых инсталлеров. А теперь вопрос: что проще сделать: поставить питон или поставить смаке, гит, мингв (или не дай бог вскод/студию) и собрать из исходников?

seiken ★★★★★
()
Ответ на: комментарий от seiken

Какой нафиг инсталлятор. Я почти уверен оно скомпилируется командой

gcc -o nomerus-rex *.cpp
или чем-то похожим безо всякого лишнего хлама. Гит тем более не нужен, качаешь с веба zip-архив и распаковываешь. И чем тебе студия не угодила? У меня она на всех компах с виндой была когда я ей (виндой) пользовался.

поставить питон

А вот как поставить туда питон я так и не узнал.

firkax ★★★★★
()
Ответ на: комментарий от seiken

Нафига? Повторю, нужен шелл - пиши для POSIX, который есть действительно везде как /bin/sh. Писать для баша - моветон. Это шелл для интерактивного использования.

firkax ★★★★★
()
Ответ на: комментарий от firkax

И чем тебе студия не угодила? У меня она на всех компах с виндой была когда я ей (виндой) пользовался.

Ты когда последний раз её ставил?

seiken ★★★★★
()
Ответ на: комментарий от seiken

Не помню, а какая разница? Хотя да, на вин10 я ставить не пробовал, возможно и будут какие проблемы.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Ну не совсем. Во-первых, нужно понимать что происходит. Во-вторых, для сборки должны быть установлены -dev пакеты для нужных библиотек. На обычных пользовательских машинах такого нет. Но для этого случая я предоставляю уже собранный бинарик. Просто скачал и можно пользоваться. Проще чем в винде.

Usruser
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.