Filename wrangling fun

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

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

Alternatively…

$ 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