我正在安装liquidprompt,并在文档中要求您在[[ $- = *i* ]] && source ~/liquidprompt/liquidprompt
中添加.bashrc
。
我试图了解该系列的第一部分,但像我这样的bash中的菜鸟很难。如果有人有一个很好的文件或答案......
答案 0 :(得分:58)
$-
包含当前的shell选项。
在[[ ... ]]
中,=
的右侧被解释为未引用的模式。因此,*i*
表示i
可能先于或后跟任何内容。
换句话说,它检查i
选项是否存在,即当前shell是否是交互式的。
答案 1 :(得分:13)
检查shell $-
的选项是否包含i
。 i
用于交互式
交互式shell是在没有非选项参数的情况下启动的 没有-c选项,其标准输入和错误都已连接 终端(由isatty(3)确定),或以-i开头的终端 选项。 PS1已设置且$ - 包括i,如果bash是交互式的,则允许 用于测试此状态的shell脚本或启动文件。