我在当前shell中设置了bash选项(例如shopt -e autocd),并希望将此选项导出/复制到新创建的子shell中。有没有办法做到这一点?
Bash版本是:GNU bash,版本4.3.11(1)-发行版(x86_64-pc-linux-gnu)
例子:
$shopt -s autocd
$shopt autocd
autocd on
$bash
$shopt autocd
autocd off
您可以使用存储外壳程序选项的相应外壳程序变量BASHOPTS导出许多类似于外壳程序变量的外壳程序选项:
export BASHOPTS
这是Bash手册页的一些信息:
BASHOPTS:用冒号分隔的已启用Shell选项列表。列表中的每个单词都是shopt内置命令的-s选项的有效参数(请参见下面的SHELL BUILTIN COMMANDS)。BASHOPTS中显示的选项是shopt所报告的选项。如果此变量在bash启动时所在的环境中,则在读取任何启动文件之前,将启用列表中的每个shell选项。该变量是只读的。
有一个密切相关的变量SHELLOPTS,但这似乎仅在直接调用bash(例如,通过bash)而不是通过sh调用时才有效,因为sh启用了Bash的POSIX模式。这里是有关此问题的更多信息。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句