Question about special variables: "-" and "$_"

both ksh/bash support this 2 special variables, Is there any document for reference?

1) "-" is $OLDPWD
2) "$_" is last argument of previous command.

Ksh man, section Variable Assignments.

Bash man, section 3.4 Shell Parameters

Thanks but I couldn't find answers from the links:

"bash man" explans !$ not $_

!!:blush: designates the last argument of the preceding command. This may be shortened to !$

$- contains the current shell options.

-, as an argument to cd, returns to the previously active directory.

There are part of all POSIX shells (and the cd command). See the man page for any such shell (the Special Parameters section of the bash man page) or the POSIX specs at Shell and Utilities

If I open that page, it's include ex. this text:
_ (An underscore.) At shell startup, set to the absolute pathname used to invoke the shell or shell script being executed as passed in the environment or argument list. Subsequently, expands to the last argument to the previous command, after expansion. Also set to the full pathname used to invoke each command executed and placed in the environment exported to that command. When checking mail, this parameter holds the name of the mail file.

Those are variables (or parameters). If you like to get value of variable then add $ before variablename, like $_, $-, $!, $$, ...

ls -a -r -f
echo $_  # output -f

Give command line like: xxx -a -b
xxx:

echo $_
echo $0
echo $*
echo $$

Usually after you login $_ is maybe usable = your shell path.
You can save your shell path in the profile script

MYSHELL=$_
export MYSHELL

if you need it.