Não é necessário o || 1 , rm atuará em todos os operandos, portanto:
rm *.error *.out
Ou usando a expansão do suporte do bash (útil se você tiver uma lista longa):
rm *.{error,out}
1 Não só é || não é necessário, mas também muda a estrutura de comando. || é o OR de bash para comandos . Então, se você tivesse arquivos a.error , b.error e a.out , b,out , bash seria executado:
rm a.out b.out
E se esse falhar, execute a.error com b.error como argumento. Não passará a.error ou b.error para uma segunda execução de rm .