Meaning $ #, $ *, $ n represent the
1, [$ 0] represents the file name of the current script;
2, $ n [] represents the transfer parameter values to the n script (n is 1-9);
3, $ [*] represents all the parameters passed to the script (script name parameter is not included);
4, [$ @ $ *] and similar functions;
5,] [$ # number of arguments passed to the script;
6, [?] $ Shows the last command exit status (0 means no error, any other value indicates an error);
7, the current script [$$] process ID number;
[!] $ 8, a background execution instruction PID (process running in the background of the last process ID number)