Sólo por probar:
Cita: $ mkdir prueba ; cd prueba
$ touch f1 ; touch f2 ; touch aux
$ cp $1 $3; cp $2 $1; cp $3 $2 f1 f2 aux
cp: missing file operand
Try `cp --help' for more information.
cp: missing file operand
Try `cp --help' for more information.
cp: target `aux' is not a directory
$ cp f1 f2 aux
cp: target `aux' is not a directory
Me da que con alias, utiliza los parámetros que le das a "intercambio" únicamente como parámetros para el tercer CP, y no para los dos anteriores. Mejor prueba con bash-scripting.