FileRenamer
Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод
inxi -Fxz
в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
FileRenamer
Подскажите,пожалуйста,как переименовать с транслита на русский имена файлов. Если можно,пошагово. Спасибо.
-
- Сообщения: 348
- Зарегистрирован: 27 авг 2016, 21:53
- Решено: 6
- Откуда: Чебоксары
- Благодарил (а): 40 раз
- Поблагодарили: 121 раз
- Контактная информация:
FileRenamer
я только ручные методы знаю:
1)вот. Копируешь имя файла и перекидываешь.
2)xneur. вроде должен поддерживать. горячие клавиши только надо в настройках глянуть. в пунтосвитчере alt+scrollLock - крутит и туда и обратно.
3) тык. переделать в обратку только. но как применять не понимаю))
1)вот. Копируешь имя файла и перекидываешь.
2)xneur. вроде должен поддерживать. горячие клавиши только надо в настройках глянуть. в пунтосвитчере alt+scrollLock - крутит и туда и обратно.
3) тык. переделать в обратку только. но как применять не понимаю))
-
- Сообщения: 829
- Зарегистрирован: 23 июл 2018, 07:58
- Решено: 7
- Откуда: Сиб
- Благодарил (а): 772 раза
- Поблагодарили: 94 раза
- Контактная информация:
FileRenamer
pv13, думаю только самописным скриптом... можно достаточно быстро на php написать
deadmau5 - Harmonic Mix
■ KDE Neon 22.04 (UE) @ Lenovo IdeaPad 3-15 Ryzen 5 4500U, 18 Гб DDR-4, 128 Gb SSD +1 Tb SSD 1920x1080
FileRenamer
Нашёл вот что:
Может кто допилить,чтобы убирались квадратные кавычки и подчёркивания?
Код: Выделить всё
function Lat2ru($string)
{
$rus = array('ё','ж','ц','ч','ш','щ','ю','я','Ё','Ж','Ц','Ч','Ш','Щ','Ю','Я');
$lat = array('yo','zh','tc','ch','sh','sh','yu','ya','YO','ZH','TC','CH','SH','SH','YU','YA');
$string = str_replace($lat,$rus,$string);
$string = strtr($string,
"ABVGDEZIJKLMNOPRSTUFH_I_Eabvgdezijklmnoprstufh_i_e",
"АБВГДЕЗИЙКЛМНОПРСТУФХЪЫЬЭабвгдезийклмнопрстуфхъыьэ");
return($string);
}
Последний раз редактировалось пользователем 1 rogoznik; всего редактировалось раз: 11
Причина: bbcode
Причина: bbcode
-
- Сообщения: 4185
- Зарегистрирован: 14 фев 2018, 00:51
- Решено: 36
- Откуда: Краснодар
- Благодарил (а): 1735 раз
- Поблагодарили: 1275 раз
- Контактная информация:
FileRenamer
pv13,
или наоборот... в зависимости от направления - из какого названия нужно убрать что-то, вместо него подставляешь пустой символ...
хотя могут быть нюансы с концом строки, так что наверное надо на пробелы заменять...
Код: Выделить всё
$rus = array('ё','ж','ц','ч','ш','щ','ю','я','Ё','Ж','Ц','Ч','Ш','Щ','Ю','Я','_','[',']');
$lat = array('yo','zh','tc','ch','sh','sh','yu','ya','YO','ZH','TC','CH','SH','SH','YU','YA', '','','');
хотя могут быть нюансы с концом строки, так что наверное надо на пробелы заменять...
Последний раз редактировалось пользователем 2 WWolf; всего редактировалось раз: 11
-
- Сообщения: 829
- Зарегистрирован: 23 июл 2018, 07:58
- Решено: 7
- Откуда: Сиб
- Благодарил (а): 772 раза
- Поблагодарили: 94 раза
- Контактная информация:
FileRenamer
rogoznik, для меня дольше раз в 10... я вообще не понимаю как что-то более менее серьёзное можно на нём делать - такой вынос мозга и простыня выходит... конечно, кто на чём привык ещё, но даже на питоне у меня быстрее выйдет
deadmau5 - Harmonic Mix
■ KDE Neon 22.04 (UE) @ Lenovo IdeaPad 3-15 Ryzen 5 4500U, 18 Гб DDR-4, 128 Gb SSD +1 Tb SSD 1920x1080
-
- Сообщения: 10436
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 135
- Откуда: Нижний Тагил
- Благодарил (а): 792 раза
- Поблагодарили: 2051 раз
- Контактная информация:
FileRenamer
FreeStyler, в данном конкретном случае на bash, думаю, будет даже быстрее, т.к. php-cli еще нужно установить. А вот на python, наверно, так же как и на bash. Но повторюсь - это про конкретный данный случай.
-
- Сообщения: 829
- Зарегистрирован: 23 июл 2018, 07:58
- Решено: 7
- Откуда: Сиб
- Благодарил (а): 772 раза
- Поблагодарили: 94 раза
- Контактная информация:
FileRenamer
rogoznik, а php-cli установить это ж надо часа 3 ждать компиляции...
И то если мощная машина, если слабая то все 12...
Массив символов для преобразования сам писать будешь?
Я копиписатил когда для сайта встала такая задача. Ну и работа по замене по-моему тот ещё гемор...

Массив символов для преобразования сам писать будешь?
Я копиписатил когда для сайта встала такая задача. Ну и работа по замене по-моему тот ещё гемор...
deadmau5 - Harmonic Mix
■ KDE Neon 22.04 (UE) @ Lenovo IdeaPad 3-15 Ryzen 5 4500U, 18 Гб DDR-4, 128 Gb SSD +1 Tb SSD 1920x1080
-
- Сообщения: 10436
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 135
- Откуда: Нижний Тагил
- Благодарил (а): 792 раза
- Поблагодарили: 2051 раз
- Контактная информация:
FileRenamer
Так вот уже все есть FileRenamer (Пост pv13 #90584) никакого гемора. Осталось только написать цикл перебора файлов в папке.
-
- Сообщения: 829
- Зарегистрирован: 23 июл 2018, 07:58
- Решено: 7
- Откуда: Сиб
- Благодарил (а): 772 раза
- Поблагодарили: 94 раза
- Контактная информация:
FileRenamer
rogoznik, дык это разве баш?
deadmau5 - Harmonic Mix
■ KDE Neon 22.04 (UE) @ Lenovo IdeaPad 3-15 Ryzen 5 4500U, 18 Гб DDR-4, 128 Gb SSD +1 Tb SSD 1920x1080
FileRenamer
Хорошо,братья! Спасибо за понимание. А как бы допилить это:
Тема та же - убрать квадратные кавычки и подчёркивания.Но разделение слов оставить.Спасибо за понимание.
Код: Выделить всё
#!/bin/bash
/home/vladimir/КНИГИ 2
for NAME in * ; do
# sed-ом заменяем символы латиницы на символы кирилицы
TRS=`echo $NAME | sed "y/abvgdeeziilmnopruf/абвгдеёзийлмнопруф/"`
TRS=`echo $TRS | sed "y/ABVGDEEZIILMNOPRUF/АБВГДЕЁЗИЙЛМНОПРУФ/"`
TRS=${TRS//zh/ж};
TRS=${TRS//kh/х};
TRS=${TRS//ch/ч};
TRS=${TRS//sh/ш};
TRS=${TRS//sch/щ};
TRS=${TRS//yu/ю};
TRS=${TRS//ya/я};
TRS=${TRS//tc/ц};
TRS=${TRS//s/с};
TRS=${TRS//k/к};
TRS=${TRS//K/к};
TRS=${TRS//e/э};
TRS=${TRS//t/т};
# переименовываем
mv -v "$NAME" "$TRS"
echo $TRS | sed 's/\(.\)/\u\1/'
done
-
- Сообщения: 10436
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 135
- Откуда: Нижний Тагил
- Благодарил (а): 792 раза
- Поблагодарили: 2051 раз
- Контактная информация:
FileRenamer
pv13,
А вот подчеркивания убрать оставляя разделение слов - очень нетривиальная задача
[]
так же sed
-ом заменяешь на пустоту
Код: Выделить всё
sed "/[]//"
-
- Сообщения: 10436
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 135
- Откуда: Нижний Тагил
- Благодарил (а): 792 раза
- Поблагодарили: 2051 раз
- Контактная информация:
FileRenamer
pv13, можешь перед этой
т.е должно получиться так
Код: Выделить всё
TRS=`echo $NAME | sed "y/abvgdeeziilmnopruf/абвгдеёзийлмнопруф/"`
Код: Выделить всё
TRS=`echo $NAME | sed "/[]//"`
TRS=`echo $NAME | sed "y/abvgdeeziilmnopruf/абвгдеёзийлмнопруф/"`
FileRenamer
Брат! Тут такая ерунда вылезла. Вышеупомянутый скрипт,переписывает расширение и тип. На ноуте всё открывается,а на электронной книжке - куку. Что изменить,чтоб только "АВТОР-ИМЯ ФАЙЛА" под замену? Спасибо за понимание.
-
- Сообщения: 10436
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 135
- Откуда: Нижний Тагил
- Благодарил (а): 792 раза
- Поблагодарили: 2051 раз
- Контактная информация:
FileRenamer
pv13, сделай так
Код: Выделить всё
TRS= `echo ${$NAME%.*}`
TRS=`echo $TRS | sed "/[]//"`
TRS=`echo $TRS | sed "y/abvgdeeziilmnopruf/абвгдеёзийлмнопруф/"`
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 10 гостей