简单的问题。我想知道如何判断当前shell是否作为mc
子shell运行。如果是,我想进入降级模式而没有mc
无法处理的某些功能。
特别是,我想要
答案 0 :(得分:2)
虽然手册页中没有记录,但快速实验表明mc
设置了两个环境变量:$MC_TMPDIR
和$MC_SID
。 (它还会设置$HISTCONTROL
,但这不是mc
特有的;它会影响bash的行为,并且可能由mc
以外的其他内容设置。)
如果您不想依赖未记录的功能,则可以自己设置环境变量。例如,在bash中:
mc() { MC_IS_RUNNING=1 command mc "$@" ; }
进入“降级模式”是另一回事;我不确定你是怎么做到的。我不知道在bash中有什么方法可以禁用指定的功能。您可以通过定义覆盖它们的函数来禁用所选的内置命令。您有什么功能?