I run Mylar on my Xubuntu server to manage my comic collection. I found out recently that there’s a tool that can convert the embedded .jpgs to .webp to save space, but it only works on cbz files and not cbr (zipped vs rar for those who don’t know). I wanted to convert all of my cbr to cbz so that I could run the tool on all my comics, so I needed to search hundreds of subdirectories for them and move them to the same folder to be processed.

Under Windows, I’d just type *.cbr into the search bar built into Explorer from the root comic directory, hit enter to get a list of files, select them all, and move them to the new folder. On Xubuntu, it’s nothing like as simple.

I found the search option in Thunar which opened Catfish, typed in *.cbr, and got a no files found message. After looking through the very limited options, I started searching for a way to do it. About thirty minutes later I’d found dozens of links telling me to use different, Terminal only, tools, but nothing about how to search subdirectories from the Catfish GUI. Purely by accident, I found a post from 2012 that mentioned the fact that Catfish doesn’t use wildcards, so just search with .cbr, something that’s not mentioned in the official docs.

I tried it, and it searched the subdirectories too, and found my files! Except there was no way to copy or cut and paste, just open, show in file manager, copy location, save as, or delete. No good options for almost 500 files across several dozen locations.

I ended up asking Chat GPT how to do it, and doing it through the Terminal, using this:

‘find . -type f -name “*.cbr” -exec mv {} /path/to/destination ;’

This is pretty basic functionality, and I had to resort to getting help to use the Terminal :(

  • hypelightfly@kbin.social
    link
    fedilink
    arrow-up
    21
    ·
    11 months ago

    This will search through whatever directory you select (and all subdirectories) for cbz, cbr, zip, or rar files. It will check the contents of each file to determine if it contains any jpg or png files. For all cbzs with jpg or png files, it will extract all data to a temp folder, convert the jpgs/pngs to webp images, and then create a new cbz file with the converted images. Any other contents of the cbz (such as ComicInfo.xml) will be retained. The final file will overwrite the existing file, so ensure you have a backup first.

    https://github.com/azuravian/cbz_jpg-to-webp

    All that for something that was unnecessary in the first place. The tool you’re trying to use already supports the file format you have and works recursively. No need to move files or convert them first.

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      11 months ago

      Yep, and that’s very frustrating. I replied to someone else while you were writing this, but the gist of it is, I read somewhere else that it couldn’t handle cbrs yet, and did the prep before I checked. I should have done it the other way around, but it’s done now :/