При использовании средства массового переименования файлов через Bulk Renamer со временем появилась некоторая неудовлетворённость необходимостью осуществлять ряд однотипных действий применительно к каждому набору файлов (папок с файлами). Поскольку во всех папках присутствуют файлы, содержащие в себе один и тот же набор символов, то для массового переименования файлов в папке было принято решение попробовать воспользоваться средствами bash. Для его использования необходимо наличие установленной программы rename. Как правило, она уже в системе присутствует, но если её не имеется, то устанавливается командой sudo apt install -y rename
В итоге получился сценарий (скрипт):
#!/bin/bash
dir=$(zenity --file-selection --directory)
cd "$dir"
rename 's/Classy_Wallpapers_//g' *.jpg
rename 's/__/_/g' *.jpg
exit
🔎 Пояснения.
dir=$(zenity --file-selection --directory) осуществляет выбор папки (каталога), содержащего файлы, имена которых необходимо обработать, а команда cd "$dir" осуществляет переход в выбранную папку (каталог). Кавычки учитывают пробелы в имени папки или пути к ней.
Далее следуют команды непосредственно замены "чего" на "что".
Команда rename 's/Classy_Wallpapers_//g' *.jpg во всех файлах jpg удаляет из названия файлов Classy_Wallpapers_
Команда rename 's/__/_/g' *.jpg во всех файлах jpg заменяет символ __ на символ _
Как итог, при массовом переименовании файлов осуществляется 2 действия (запустить скрипт и выбрать папку с файлами) вместо прежних 9. Так как нет необходимо использовать графический интерфейс, то операции замены символов в именах файлов происходит значительно быстрее, чем при использовании массового переименования из комплекта поставки Linux Mint. Команду скрипта (сценария) sh можно "посадить" на горячие клавиши через "Настройка клавиатуры – Комбинации клавиш" либо через программу Autokey.
Мне кажется просто использовать "rename" в терминале удобнее. Не понял - зачем скрипт.
ОтветитьУдалитьВ примере дана 1 строка. В использованном варианте их было 4. Всё определяется личными предпочтениями. Если вам удобно в терминале, то делайте так как вам удобно. Здесь просто как вариант.
ОтветитьУдалить