Un saludo kikepan
Bienvenido al foro y a PHP. Como bienvenida, déjame hacerte notar lo bueno de estás dos herramientas.
Primero, la documentación de PHP, donde si consultas la función que estás utilizando, osea,
shell_exec(), verás que al inicio, junto con su descripción, dice:
Cita: Esta función es idéntica al operador de comillas invertidas.
Y voalá,
ahí tienes tu respuesta. Cabe decir que esto no es propio de PHP, las comillas invertidas son comunes para la ejecución de programas.
Segundo, el foro y
sus FAQ, donde buscando el '@' encontrarás que hay una que dice:
162.
¿Para qué sirve anteponer el arroba (@) a una sentencia?
que también debería solucionarte algunas dudas ...

Sou, espero te sirvan los enlaces y, sí tienes alguna otra duda que no te solucionen, solo menciónalo.
Un saludo

PD: Buscador, FAQ, Documentación, ¡que buenas herramientas!