Filename wrangling fun

I learnt some new things today about how to deal with filenames in bash.

$ touch foo
$ ls foo*
$ mv foo{,z}
$ ls foo*


$ touch foo[1,2,3]
$ ls foo*
foo1 foo2 foo3
$ find . -name "foo*" -exec mv {}{,old} \;
$ ls foo*
foo1old foo2old foo3old

Silliness, I know. But handy when you want to rename a bunch of things, or just rename one without messing it up.

Tags: linux cli HOWTO