Es &>
, no solo &
.
En bash
, &>
redirige tanto la secuencia de salida estándar como la secuencia de error estándar en alguna parte.
Por lo tanto, utility &>/dev/null
es lo mismo que utility >/dev/null 2>&1
.
El comando exec &>/dev/null
redirige ambas secuencias de salida del shell actual /dev/null
(es decir, descarta toda la salida de la secuencia de comandos a partir de ese punto, error u otro).
La parte relevante del bash
manual:
Redirecting Standard Output and Standard Error
This construct allows both the standard output (file descriptor 1) and
the standard error output (file descriptor 2) to be redirected to the
file whose name is the expansion of word.
There are two formats for redirecting standard output and standard
error:
&>word
and
>&word
Of the two forms, the first is preferred. This is semantically
equivalent to
>word 2>&1
When using the second form, word may not expand to a number or -. If
it does, other redirection operators apply (see Duplicating File
Descriptors below) for compatibility reasons.