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 :(
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.
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 :/
Anyone expecting to use Linux the same way they are using Windows, without any changes, is going to be disappointed. You cannot reasonably expect to keep the same learned workflows from one system and use them on a completely different system without having to at least tweak some of it.
Learning is part of such switchovers, and loudly complaining that “Thing X is not working like I know it to, this is why people don’t like Linux” is not making anyone more likely to help you nor is it going to solve your problem. I’m glad that you managed to find a way to do what you need in any case, and maybe that command will stick around in the back of your head for when you need something similar sometime in the future :)
The problem here is not that things work differently, but that GUI programs are often just dumb, or have the functionality but in a very strange way. And I’m not a new Linux user.
I read it more as: "The way to do this (normally simple) thing is incredibly cumbersome, and could be greatly improved.
Right, but this is fundamentally at odds with the ‘Linux for everyone’, ‘Linux for gaming’, and ‘Linux can replace Windows for most use cases’ rhetoric.
If you enjoy Linux for its own sake and you like fiddling around with it and learning its ins and outs, it’s fantastic. But if you just want the OS to get out of the way so you can get back to what your were doing, it leaves some room for improvement.
We can’t have both, and that’s fine. There’s also an argument to be made for people getting used to dealing with a command line because it’s something of a prerequisite for getting away from increasingly shady corporate overreach. But that doesn’t help me when the solution to getting my extra mouse buttons and precision mode is to create a well documented bug report for Solaar and then wait. I just want my push to talk to work, you know?
That gap is definitely shrinking as time goes on, but it’s still an obstacle and it’ll always be part of the conversation around GNU until it’s no longer a concern for one reason or another.
You’re missing my point. It’s not a case of me wanting to do something in the same way that Windows does it, it’s a case of the Linux way is massively over complicated for no good reason.
Yes, the terminal is vastly more powerful, but there’s no reason at all that you should be forced to use the terminal for something as simple as this.
It’s not complicated – it’s familiarity. I have used Linux as my daily driver for quite a few years now, so the moment I read your problem I was already crafting the find / mv command in my head as how I would resolve the problem. I am more familiar with it, it doesn’t feel complicated at all to me – I’m telling the computer to find a pattern, and then move the results (literally the name of the commands!). That feels really straight forward to me because I’m used to it and it’s in my comfort zone. Because I don’t use Windows much (really only at work, and only to run Word or Excel) it actually took me a second to figure out how I would do it in Windows (at first, I was thinking a Powershell script), and I didn’t even realize that when you search in Explorer you could bulk-move the results (although I should have, that’s pretty logical functionality and like I wrote I do use Windows at work albeit in a non-technical way!). Essentially, often when I have to do anything even marginally complicated on Windows, I feel the same frustration you do because it’s not intuitive (to me) and it would be so much easier if I was only using the system with which I am more familiar.
I won’t suggest that the Linux console is easier for most users, the way we use technology in our lives (and not just desktop processing) automatically makes the Windows interface more familiar to most people. I do totally recognize that if we do want Linux for the masses or whatever cute phrase is being used to promote Linux desktops for mom and dad and business then we have to adapt to what most users are familiar with.
It’s not complicated though. It’s just different than windows. It’s also not an issue with Linux. Thunar just doesn’t behave the way you want it to. Files in GNOME works fine, but wildcards don’t require a * to search.
Yup, the exact thing OP is complaining about is exactly why I prefer to use Linux.
This is a Thunar issue, not Linux in general. It works with Dolphin’s filter bar.
That isn’t even a Thunar issue anymore, it was fixed in the last version half a year ago. It’s more about stable release distros provide inferior experience yet again.
Your title is a bit provocative but I feel you. The biggest plus for Linux is also a bit of a negative: there are so many different ways to do things. There are multiple file managers for example, that all behave differently in some ways. So at the beginning it can be frustrating at times to figure out how things work and how to accomplish your goal.
So let’s imagine in a weeks time you have a slightly different issue, you need to do the same operations, but only up to 3 subdirectories deep.
On windows you’d be back to square one. on linux you just add -maxdepth 3 to the command you found and congrats it’s done.
You have learnt a permanent skill now.
I like your optimism :)
I haven’t learned a new skill, I just copied and pasted some commands from a website. As it is, I’ve been using Xubuntu on this server for a few years, and Mint on my laptop (on my PC now and then too, and permanently once I can get rid of Adobe), and I’m comfortable with the terminal. I grew up using DOS, and could set up gaming boot disks in my sleep. I just think it’s silly that to do something as basic as copying files, I had to resort to this. Someone new to Linux coming from Windows is not going to have a clue how to do it, and is likely to go back, all over one of the most basic operations a GUI should be able to do.
Someone new to Linux coming from Windows is not going to have a clue how to do it, and is likely to go back, all over one of the most basic operations a GUI should be able to do.
If they don’t want to learn the basics perhaps they should?
The basics doesn’t involve having to drop into the terminal because the file manager can’t do basic file operations. You’d probably complain about Windows making you switch between Settings and Control Panel because it’s bad design, but because this happened in Linux, it’s fine.
If you are expecting a more windows-like experience, I would suggest using Ubuntu or Kubuntu (or any other distro using Gnome/KDE), as these are much closer to a modern Windows GUI. With Ubuntu, I can use the default file manager (
nautilus
) and doCtrl+F
and filter files via*.ext
, then select these files then cut and paste to a new folder (drag and drop does not seem to work from the search results). In Kubuntu, the search doesn’t recognize*
as a wildcard in KDE’s file manager (dolphin
) but does support drag/drop between windows.If you keep trying to use GUI to do what you want you’re gonna have a bad time. The majority of Linux users doing power stuff like this will use the terminal. Because of that, the GUI is unfortunately underdeveloped.
It’s good once you learn it though. Let’s say that tool never existed. I could easily write a bash script to compress images in cbr or cbz myself. Or autoconvert all cbr files to cbz. Or watch my downloads directory for new files and do that automatically. It’s very flexible and empowering if you learn it. Nobody can make a GUI for every single thing people want a script for.