为什么echo $ -1输出这个?

Lee*_* Xu 1 bash shell

谁能解释一下这里发生了什么?输出意味着什么?

:$ echo $-3
himBH3
:$ echo $-2
himBH2
:$ echo $-1
himBH1
Run Code Online (Sandbox Code Playgroud)

谢谢.

Eta*_*ner 5

$-是包含当前活动shell选项的变量.

-

(连字符.)扩展为调用时指定的当前选项标志,set builtin命令或shell本身设置的那些(例如-i选项).

您的命令正在评估the value of -一个数字.