Provavelmente, há mais de um arquivo que corresponde a *.o
, enquanto apenas um arquivo corresponde a *main.o
, portanto, no primeiro caso, a expansão do shell é executada:
$ find . -name main.o
e isso funciona. No segundo caso:
$ find . -name file1.o main.o
E é por isso que você tem erros.
Para evitar isso, você deve citar expression
em ambos os comandos:
$ find . -name '*.o'
$ find . -name '*main.o'