|
|
|
|
|
by IronBacon
3222 days ago
|
|
The same thing can be done in a kinda portable way with the pre/post substitution/expansion operators (at the moment don't recall their correct name): for a in **/*.jade; do echo mv "$a" "${a%jade}pug"; done
If I'm not wrong it should work in Bash and Ksh too (bar the double * expansion), this when I don't have an Emacs at hand.In the first invocation I prefer to do a "dry run", if it looks good I proceed removing the echo. P.S. Your example above should use double quote instead of single quote, otherwise the content is not expanded by Zsh P.P.S. One recall the pre/post operator looking at the symbols on a US keyboard, the post follows the variable symbol... |
|
I've used zmv to also reorganize the directory structure of files too, something that seems easier to do with its glob/variable replace syntax.
Nice to have a cross platform option for usage in scripts though.