Remove Spaces from File Names
Spaces in file names are a nightmare with the web; you deal with %20 and other nonsense when spaces are in file names. That's why when I receive images with spaces I cringe; I mean hell, dealing with spaces of file systems sucks too.
Anyways, I use the following command to remove spaces in file names within a directory:
# Replace spaces in file names with "-"
for f in *\ *; do mv "$f" "${f// /-}"; done
In this case I replace spaces with a dash. You can omit the dash if you'd rather there be nothing in place of spaces; underscores is another common pattern.
This script is not recursive, so it wont dive into subdirectories -- I don't usually have that case.
![Conquering Impostor Syndrome]()
Two years ago I documented my struggles with Imposter Syndrome and the response was immense. I received messages of support and commiseration from new web developers, veteran engineers, and even persons of all experience levels in other professions. I've even caught myself reading the post...
![Animating CSS3 Transforms with MooTools Fx]()
![Full Width Textareas]()
Working with textarea widths can be painful if you want the textarea to span 100% width. Why painful? Because if the textarea's containing element has padding, your "width:100%" textarea will likely stretch outside of the parent container -- a frustrating prospect to say the least. Luckily...
![Chris Coyier’s Favorite CodePen Demos IV]()
Did you know you can triple-heart things on CodePen? We’ve had that little not-so-hidden feature forever. You can click that little heart button on any Pen (or Project, Collection, or Post) on CodePen to show the creator a little love, but you can click it again...
https://gist.github.com/dbswebsite/f7ff88850dcf01fdafab5e66186cbdec
I *looooove* this! Nice work!
Is there a way to reverse this process? I get file names from the web that have no spaces. I want to put them back in. For example: HowToCookATurkey.txt would return to How To Cook A Turkey.txt
I haven’t found any of the renaming programs out there that tell you how to do it. Thanks in advance.
you’re a lifesaver! thx!
New to coding so need some help. Trying to figure out how to edit you code to work for my issue. Have a file, “Outfile-ABC-123 456 789.txt” in a directory, “//dev/out/file/” which has empty spaces in the file name which I need to replace the them with “0” or delete them all together whichever is simpler. Is the code below correct to help resolve my issue? Thanks in advance.
Before: “Outfile-ABC-123 456 789.txt”
After: “Outfile-ABC-12304560789.txt” or “Outfile-ABC-123456789.txt”
My version of your code edited.
for “Outfile-ABC-*” in (“\\Dev\Out\File\”;) do (mv “$Outfile-ABC-*” “${Outfile-ABC-*// /0}”); done