Verificar a existência reduzirá o problema, mas no caso mais geral, é uma condição de corrida. O arquivo ainda pode ser removido entre a verificação e a tentativa de cópia.
Talvez apenas capture todos os erros e solte qualquer um para "o arquivo não existe".
Cópia normal:
$ cp noexist bar /tmp
cp: cannot stat 'noexist': No such file or directory
cp: cannot open 'bar' for reading: Permission denied
Modificado
$ cp noexist bar /tmp 2>&1 | grep -v "No such file or directory" >&2
cp: cannot open 'bar' for reading: Permission denied