This command will replace all the spaces in all the filenames of the current directory with underscores. There are other commands that do this here, but this one is the easiest and shortest.
The simplest way I know. Show Sample Output
Replace 'SHOWNAME' with the name of the TV show. Add -n to test the command without renaming files. Check the 'sample output'. Show Sample Output
This command is a powerful "detoxifier" that eliminates special chars, spaces and all those little chars we don't like. It support several "sequences" so be sure to check your /usr/local/etc/detoxrc while at it... and maybe define your own Show Sample Output
the "i" controls case sensitiveness. It's slightly inefficient since it uselessly renames .jpg to .jpg, but that's more than compensated by launching only one process instead of two, besides being shorter to write.
Changing a file extension to a new one for all files in a directory.
Best to try first with -n flag, to preview
This uses Perl's rename utility (you may have to call it as prename on your box) and won't choke on spaces or other characters in filenames. It will also zero pad a number even in filenames like "vacation-4.jpg".
Note the g for global in the perl expression; without it, only the first occurrence in the name would be replaced. Show Sample Output
Useful when you want to quickly rename a bunch of files. Show Sample Output
The above one-liner could be run against all HTML files in a directory. It renames the HTML files based on the text contained in their title tag. This helped me in a situation where I had a directory containing thousands of HTML documents with meaningless filenames.
That is an alternative to command 8368.
Command 8368 is EXTREMELY NOT clever.
1) Will break also for files with spaces AND new lines in them AND for an empty expansion of the glob '*'
2) For making such a simple task it uses two pipes, thus forking.
3) xargs(1) is dangerous (broken) when processing filenames that are not NUL-terminated.
4) ls shows you a representation of files. They are NOT file names (for simple names, they mostly happen to be equivalent). Do NOT try to parse it.
Why? see this :http://mywiki.wooledge.org/ParsingLs
Recursive version:
find . -depth -name "*foo*" -exec bash -c 'for f; do base=${f##*/}; mv -- "$f" "${f%/*}/${base//foo/bar}"; done' _ {} +
Show Sample Output
Maybe simpler, but again, don't know how it will work with space in filename.
Use this command if you want to rename all subtitles for them to have the same name as the mp4 files. NOTE: The order of "ls -1 *.mp4" must match the order of "ls -1 *.srt", run the command bellow to make sure the *.srt files will really match the movies after run this command: paste -d:
Use 'mmv' for mass renames. The globbing syntax is intuitive.
This command is useful for renaming a clipart, pic gallery or your photo collection. It will only change the big caps to small ones (on the extension). Show Sample Output
It's the rename-tool from debians perl-package.
Recursively rename .JPG to .jpg using standard find and mv. It's generally better to use a standard tool if doing so is not much more difficult.
Would this command line achieve the desired function? My CLI knowledge is not great so this could certainly be wrong. It is merely a suggestion for more experienced uses to critique. Best wishes roly :-) Show Sample Output
A powerfull way to rename file using sed groups. & stand for the matched expression. \1 referes to the first group between parenthesis. \2 to the second. Show Sample Output
This commands removes space from all the files with specific extension. I've specifed *.jpg as an example.
commandlinefu.com is the place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.
Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.
» http://twitter.com/commandlinefu
» http://twitter.com/commandlinefu3
» http://twitter.com/commandlinefu10
Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):
Subscribe to the feed for: