In Bash, there are two closely related “special parameters” for accessing how the current script was invoked:
$*
and$@
. For both variables, the behavior is affected by whether or not the variable is enclosed in double quotes. The following table summarizes all cases:
Source: Bash $* and $@