Ik I can use grep to find filenames with specific characters and then print that to a list but idk how to utilize said list to rename. I found another solution which’s using mv but couldn’t figure out how to make it work w subdirectories. I think using both grep and mv in unison’s the answer just idk how to do it. plz halp


basically I’m mirroring my music library to my new phn and Android shits itself when it encounters
?,*,"in filenames. I used to manually remove them but today I decided to actually learn how to automate.If you want to manage a music library, you may be interested in Beets
Btw, yt-dlp has a
--restrict-filenamesoption. And also--extract-audioand--audio-format.I didn’t get my music from yt-dlp. and even if the source title contains special chars, yt-dlp uses chars that look the same but aren’t.
edit: am aware of the feature but the one I mentioned does the job for me
yt-dlp has an option to rename downloaded files to restrict to ASCII characters (and another option to restrict filename length). I usually use my own wrapper script around yt-dlp, but I guess you already have your own. So for that, you can use the option
--restrict-filenamesto “Restrict filenames to only ASCII characters, and avoid “&” and spaces in filenames”. See all options withman yt-dlp. Try it out.Ik of yt-dlp being able to rename the media that I download using it. but I didn’t use it to get my music. plus it’s not a prob that I have w yt-dlp. even w/o yt-dlp using their same same but not same chars, Linux doesn’t mind
?,*and"in filenames. but I do like the feature as/does present probs.Are you just trying to remove special characters from the filename, or are you also trying to move them to new directories?
trying to remove them so that I can transfer to Android. I can use grep to improve my manual process but I’d love for it to be automatic.
Nice, extra hard because those symbols all have special meanings when searching something. Nice puzzle, I wish I had the energy to solve it right now.