From Bash Manual
$0Expands to the name of the shell or shell script. This is set at shell initialization.
If Bash is invoked with a file of commands (see Section 3.8 [Shell Scripts], page 39),
$0is set to the name of that file.
If Bash is started with the
-coption (see Section 6.1 [Invoking Bash], page 80), then
$0is set to the first argument after the string to be executed, if one is present.
Otherwise, it is set to the filename used to invoke Bash, as given by argument zero.
I understand the first two cases, but not the last one. What do "otherwise" and "the filename used to invoke Bash" mean specifically?