从https://www.gnu.org/software/bash/manual/html_node/Special-Parameters.html,
-
(连字符。)扩展到调用时指定的当前选项标志,由 set 内置命令或由 shell 本身设置的那些标志(例如 -i 选项)。
我不确定它说的是什么。你能举一些例子来说明连字符参数的含义吗?
您可以echo $-
查看当前启用的 shell 选项:
$ echo $-
himBH
Run Code Online (Sandbox Code Playgroud)
这些是您可以-
在 shell 调用时提供的选项— bash -h -B
— 或稍后使用set
.
这些标志在的文档set
中定义。我上面的选项是:
和i
交互式外壳。
如果我更改活动选项,例如 with set -x
,我将获得一个新值$-
:
$ set -x +h
$ echo $-
imxBH
Run Code Online (Sandbox Code Playgroud)