
Jak masowo zmieniać nazwy plików, aby były czytelniejsze i wygodniejsze do znalezienia?
Oto często spotykana sytuacja: chcemy uporządkować nasze e-booki na dysku, np. poukładać je tematycznie, albo po prostu zrobić sensowną kopię zapasową, aby coś dało się znaleźć.
Ale w zależności od tego, skąd je ściągamy – pliki mają różne nazwy. Czasami to jest tytuł, czasami tytuł i autor, a czasami… ISBN albo wręcz losowy ciąg znaków. Utrudnia to orientację z jakimi tytułami mamy do czynienia. Nazwy pojedynczych plików możemy dostosować ręcznie, ale co, jeśli mamy ich setki?
Warto ujednolicić nazwy plików, tak aby zawierały np. tytuł i autora. A przecież te dane są zawarte w metadanych plików EPUB czy MOBI.
Możemy tu korzystać z różnych narzędzi. Pokażę Wam w jaki sposób sam korzystam z programu Total Commander do masowej zmiany nazw plików z książkami.
Spis treści
Kilka słów na temat Total Commander
Total Commander (dawniej Windows Commander) to menedżer plików dla systemu Windows, który wyświetla je w dwóch panelach, podobnie jak dawny DOS-owy Norton Commander.
Program dostępny jest od lat w zapomnianym już nieco modelu shareware. Po zainstalowaniu nie ma żadnych ograniczeń, a jedynie okno przy starcie z koniecznością wyboru jednej z trzech liczb. Niektórzy przez całe życie te liczby klikają, ja jednak zachęcam do rejestracji. Jest ona jednorazowa i bezterminowa, ja wciąż korzystam z licencji, którą nabyłem… 20 lat temu! Autor jak dotąd nie uległ pokusie, aby wprowadzić licencje czasowe, albo subskrypcje, no i chwała mu za to. Wciąż ukazują się aktualizacje programu.
I nie, nie jest to wpis sponsorowany. 😉
Nie wyobrażam sobie używania komputera z Windows bez Total Commandera, bo ma on masę funkcji do zarządzania plikami. Jedną z cech TC jest możliwość rozszerzania programu o różnego rodzaju wtyczki, co wykorzystamy w przypadku e-booków.
Zmiana nazwy plików EPUB i MOBI
Pierwszym krokiem będzie instalacja wtyczki eBookInfo WDX, którą ściągniemy ze strony TotalCmd.NET, jest też wątek na oficjalnym forum. Wtyczka da nam dostęp do szczegółowych danych e-booków.
Po ściągnięciu pliku ZIP z wtyczką, wchodzimy w ten plik w programie Total Commander i program sam proponuje jej instalację.

Po restarcie programu wtyczka jest już zainstalowana.
Jeśli chcemy zmienić nazwy plików, zaznaczamy je wszystkie i wybieramy „Narzędzie wielokrotnej zamiany”. Można też użyć skrótu CTRL+M.
Narzędzie wielokrotnej zamiany pozwala na zmianę nazwy plików zgodnie z zadanymi wzorami.

My skorzystamy z wtyczki, która wyciągnie dane o autorze i tytule. Klikamy więc „Wtyczka”.

Jak widać, są tu też inne metadane pliku, takie jak data wydania, wydawca, czy gatunek. Ale z ich używaniem byłbym ostrożny, bo wiele plików może po prostu ich nie mieć.
Wybieramy „Author” i „Title”, po czym wskakują nam do pola „matryca zamiany”. Możemy przedzielić je myślnikiem, np.
[=ebookinfo.Title] - [=ebookinfo.Author]
Po wpisaniu wzorca zmiany nazwy, widzimy podgląd zmian:

Gdy uznamy, że wszystko jest OK, możemy kliknąć „Start” i zacznie się zamiana.
Oczywiście nie zawsze jest tak, że docelowe nazwy będą nas zadowalać, więc warto sprawdzić propozycje przed zatwierdzeniem.
Zmiana nazwy plików PDF
Wyżej podana wtyczka nie działa jednak w przypadku plików PDF. Tutaj musimy zainstalować wtyczkę xPDFSearch. Jej głównym przeznaczeniem jest przeszukiwanie treści plików PDF z poziomu Total Commandera, ale ma ona też dostęp do metadanych.
Wtyczkę znajdziemy na Githubie, a link bezpośredni jest też na forum Total Commandera.
Tutaj też wybieramy pola „title” i „author” z menu wtyczki.

Aby wtyczka działała nam poprawnie przy zmianie nazwy wielu plików PDF, trzeba zmienić jej konfigurację. W folderze Total Commandera tworzymy plik „contplug.ini” (lub otwieramy, jeśli istnieje), w którym umieszczamy następujące linijki:
[xPDFSearch]
NoCache=1
Opcja „NoCache” wyłącza pamięć podręczną wtyczki, co obniża jej wydajność przy innych zastosowaniach, ale umożliwia zmianę nazwy. Inne opcje konfiguracji znajdziemy na stronie xPDFSearch, można też edytować plik „xPDFSearch.ini” w folderze wtyczki.
Jak korzystać z obu wtyczek jednocześnie?
Co, jeśli chcemy jednocześnie zmieniać nazwy wszystkich e-booków w formatach EPUB, MOBI i PDF? Wystarczy w narzędziu wielokrotnej zamiany podać wywołania obu wspomnianych wtyczek.
Przykładowo: tu najpierw tytuł, potem po myślniku autor.
[=ebookinfo.Title][=xpdfsearch.Title] - [=ebookinfo.Author][=xpdfsearch.Author]
Jedna wtyczka zadziała przy plikach EPUB/MOBI, druga przy plikach PDF, w zależności od formatu.

Jeśli często korzystamy z tego ustawienia, możemy skorzystać z funkcji „zapisz ustawienia” (po prawej stronie ekranu) i ustawienia będą później dostępne pod klawiszem F2.

W ten sposób w parę sekund wybierzemy właściwe ustawienia.
Tytuł i autor książki jako kolumny w Total Commander
Jeśli nie chcemy zmieniać nazw plików, możemy też zmienić sobie zawartość listy plików w Total Commander, aby wyświetlała również metadane książki.
W tym celu: klikamy prawym klawiszem na nazwie kolumny i wybieramy „Konfiguruj własne kolumny”. Dodajemy nową, no i tam podobnie jak wyżej – wybieramy z wtyczek konkretne pola.

Zapisujemy w ten sposób nasze ustawienia i możemy je potem wybierać po kliknięciu prawym klawiszem na nagłówku kolumny.

I tu przykładowo obok nazwy pliku mamy autora i tytuł.

Jest to czasami przydatne, choć przy dużej liczbie plików pojawi się zauważalne opóźnienie, bo te wszystkie dane muszą się załadować.
O czym jeszcze pamiętać?
Kilka dodatkowych uwag dotyczących zmiany nazw plików:
- Wadą opisanego rozwiązania jest to, że jest ono „nieodporne” na sytuację, w której w pliku nie ma metadanych np. z autorem i tytułem. W takim przypadku nowa nazwa będzie pusta, a tego byśmy raczej nie chcieli.

- Może się też zdarzyć, że w folderze mamy kilka plików z tą samą książką, ale o innych nazwach. Wtedy podczas zamiany zostaniemy o tym ostrzeżeni, będzie możliwość dodania unikalnej nazwy pliku. Oczywiście takie duplikaty warto przejrzeć i ew. pousuwać.
- Jeśli w proponowanych nazwach plików chcemy wprowadzić zmiany – służy do tego niepozorny przycisk „Edytuj nazwy” po prawej stronie. Gdy go klikniemy, plik z wszystkimi nazwami otworzy się w notatniku (lub innym edytorze), możemy wszystko poprawić, po czym zapisać i załadować je na nowo.

Narzędzie zmiany nazw jest bardzo potężne i jeśli nie zachowamy ostrożności, możemy sobie na dysku zrobić spory bałagan. W przypadku wątpliwości, warto zrobić kopię zapasową folderu, w którym zamierzamy zmieniać nazwy.
Podsumowanie
Do tego, że warto mieć porządek w e-bookach na dysku, nie trzeba chyba przekonywać. Właściwe nazwy ułatwiają ich znalezienie, choćby przez omawiane kiedyś narzędzie Everything.
Oczywiście jest też tak, że na co dzień my tych poprawnych nazw… nie potrzebujemy! Bo na czytniku i tak widzimy autora i tytuł. Bo jeśli pliki dodamy do Calibre – tam też są widoczne tak jak trzeba, również nazwy na dysku są właściwe. Gorzej jeśli chcemy sobie zrobić kopię zapasową. Dlatego wielu z nas ma w folderze „Pobrane” na pewno spory bałagan.
A w jaki sposób Wy dbacie o poprawność nazw pobranych książek? A może nie dbacie?
Źródło ilustracji otwierającej artykuł: Gemini.





ciekawe, ale jeśli chodzi o kopie zapasowe, czy nie bardziej sensowne jest wrzucanie plików do Calibre i robienie kopii zapasowej biblioteki Calibre?
Tak też można i tak też robię (przez wrzucenie biblioteki Calibre na Onedrive). Ale tu jest problem z różnymi formatami. Do książek w Calibre można podpiąć inny format np. PDF do epuba, ale chyba nie da się automatycznie. Inna sprawa, że zależy mi też na „oryginałach” ściągniętych ze sklepów, przed ew. przeróbkami w Calibre.
Do tego jest funkcja (której zawsze używam) – traktuj każdy folder jako osobną książkę. Tylko wtedy trzeba robić osobne foldery, ale dzięki temu epuby i mobi wpadają razem.
Wielkie dzięki Robercie, za polecajkę. Nareszcie nazwy plików nie zależą od widzimisię wydawcy
O jakżeż marzy mi się podobna wtyczka na MacOS! :(
Wiem że dla Maca jest Hazel, który potrafi np. automatycznie modyfikować nazwy ściągniętych plików, ale dane odczytuje chyba tylko dla PDF. Może przy epub z jakąś wtyczką też da radę.
Hmmm… Double Commander ma _jakieś_ wsparcie dla wtyczek TC. A nuż… Nawet bez widelca.
Sprawdziłem. Nie działa. No i:
> Double Commander uses Total Commander plugin API, so under Microsoft Windows you can use plugins from Total Commander.
Patrz https://github.com/doublecmd/doublecmd/wiki/Plugins
pythonowy ePubQtools z opcją -n użytkownika Quiris zmienia nazwy plików epub na 'autor – tytuł’ wg metadanych
https://forum.eksiazki.org/amazon-com-kindle-f146/epubqtools-skrypt-do-walidacji-i-konwersji-ebookow-t14388.html
Bardzo dziękuję! To wygląda dość obiecująco – wygląda, że mam już zajęcie na weekend ;)
Mnie bardziej zastanawia jak przywrócić nazwy plików w Calibre po nie udanej próbie zmiany nazw regexp-em. Zdarzyło mi się, że napisałem wyrażenie regularne i przez przypadek zamiast mi podmienić części udało się zjeść pierwsze duże litery, a nazwy części PDF i tak już były dziwne np: LMAK lub kod liczbowy. Takie nazwy muszę zmieniać ręcznie otwierając plik i przepisując z okładki dane, to i tak nie koniec. Zdarza się, że w takich plikach nie ma okładki, strony początkowej czy końcowej i jest tylko treść i na zasadzie odfiltrowania książek z biblioteki da się ustalić tytuł i autora. Może ktoś ma lepsze sposoby?
Do zmian nazw plików są osobne programy np.: szyszka – działą na windows, macos i linux. Choć tu trzeba przyzwyczaić się do interfejsu.
A w którym miejscu w Calibre używałeś tego regexpa? Przy imporcie?
Nie na gotowej bazie, dokładnie usunęło mi pierwszą dużą literę wyrazu, ale jak napisałem wcześniej przez mój błąd składni regexp. Robiłem porządek ze starymi książkami zapisanymi w .pdf głównie z „Wydawnictwo Uniwersytetu Łódzkiego” pobranych na ebookpoint. Teraz w wolnej chwili zmieniam tytuły zostało ok 600 pozycji, bo nie chce mi się szukać i dodawać książek na nowo bo folder do importu mam w formie folder /NazwaKsiegarni i wrzucam wszystko jak leci z danej księgarni, a potem import do Calibre. Pobieram darmowe książki z ekonomi powoli w różnym czasie. Obecnie było ich ponad 800 i chciałem uzupełnić autorów i tytuły bo helion traktuje metadane w .pdf po macoszemu i narobiłem bałaganu, a drugi raz dodanie książek z folderu nie pomoże bo wszystko to duplikaty i nadal dużo roboty.
Ech, sprawdziłem. Moja licencja jeszcze nie ma 20 lat. Tylko trochę ponad 19… Tak, czasami coś robię w Windows :-P
Dzięki za opis i namiary na wtyczki! Do tej pory używałem tego tylko do mp3.
Dzięki za znakomity pomysł! Skorzystam!
A co do Total Commander, to „od zawsze” jest to pierwsza aplikacja, którą instaluję w systemie. Moja licencja za 4 dni skończy 23 lata!
Używam TC od zawsze, narzędzie wielokrotnej zamiany to coś wspaniałego, ale nigdy przyszło mi do głowy, że jest wtyczka na ebooki. Przyda się na przyszłość.
Strona z tym dodatkiem leży. Czy mógłbyś Robercie wystawić gdzieś instalkę tej wtyczki?
Chodzi o tę stronę? https://totalcmd.net/plugring/eBookInfoWdx.html
„U mnie działa” :)
Kopia pluginu jest tutaj: https://wincmd.ru/plugring/eBookInfoWdx.html (też działa, trzeba w firefoxie zezwolić na pobieranie)
Nie bangla. Spróbuję z domu, może firma coś blokuje.
sama w sobie wtyczka jest genialna, pod warunkiem że wszystkie dane w metadanych epuba są w porządku, jednolite i pełne, a nie zawsze jest tak, często autor jest wpisywany imię nazwisko, albo nazwisko imię i tu pojawia sie problem. U mnie z 300 plikami epub wtyczka zrobiła sieczkę z nazwami.
W Linuksie można to zrobić w terminalu z użyciem exiftool np. tak:
for i in *.{pdf,epub}; do cp -iv „$i” „$(exiftool -T -Creator „$i”) – $(exiftool -T -Title „$i”).${i##*.}”; done
Uwaga na cudzysłowy – powinny być zwykłe podwójne, jak to w programowaniu. Tutaj wyświetlają się polskie.
Można zamienić cp na mv żeby zmieniało nazwę zamiast kopiować i np. usunąć -i, żeby nie pytało za każdym razem. Ale dałem tak dla bezpieczeństwa. I tak nie jest to wersja odporna na śmieci w metadanych itp.
Napisałem to przed chwilą, nigdy normalnie nie używałem.
Kiedyś kombinowałem dla książek z eBookPointu, żeby brało oryginalną nazwę, zamieniało podkreślenia na spacje, zmieniało „tytuł-autor” na „Autor – Tytuł” itp., ale i tak musiałem dużo ręcznie poprawiać i odpuściłem. Po prostu robię ręcznie po każdym zakupie i pobraniu książki. Nie kupuję na raz tak wielu książek, żeby mnie to bolało. 2 stycznia kupiłem 15 książek, co przełożyło się na 20 plików ePub, PDF i ZIP – i był to chyba mój rekord. Pozmieniałem ręcznie.
Z tymi metadanymi to też taki kłopot, że trzeba sprawdzić, czy są i są dobre. Wklepanie ręczne zajmuje mniej czasu. A jak mam np. książkę informatyczną, dla której pobieram 3 pliki, ePub, PDF i ZIP, to samą nazwę wklepuję do jednego, kopiuję i do pozostałych tylko wklejam.
Następnym razem pobawię się tym poleceniem, od którego zacząłem komentarz.
W Linuksie takie operacje są intuicyjne i bardzo logiczne. Wpis pewnie miał na celu pokazanie, jak pewną ułomność Windowsa można rozwiązać z użyciem dodatkowego programu.