done será substituído pelo conteúdo de to_do
Você pode verificar com um teste simples:
$ echo a > done
$ echo b > to_do
$ cp to_do done
$ cat done
b
e
$ echo a > done
$ echo b > to_do
$ mv to_do done
$ cat done
b
Editar
Após os comentários, algumas informações adicionais
-
donenão será substituído sedoneouto_doforem diretórios. Sedonefor um diretório, o arquivoto_doserá movido / copiado no diretório. Seto_dofor um diretório, você receberá uma mensagem de erro - usando a opção
-i, você pode instruirmvecpa avisar ao sobrescrever um arquivo - em algumas distribuições
cpemvsão um alias paracp -iemv -i(especialmente para o usuário raiz)