Switching source and destination (or undoing the mv, cp operation)

view story

http://unix.stackexchange.com – mv or cp commands both expect source and destination as arguments. In case you want to undo the change you made, or just change the source and destination you supplied before, what is the quickest way to do this? I thought of creating a function that takes command src dest and switching src and dest, but I was wondering if there is a better way to do this. (HowTos)