假设我启动了一个bash
shell,
...然后bash
是该 shell 中的
另一个bash
会话,
...然后bash
是该会话中的另一个会话,...然后是该会话中的另一个会话,
...(次 N)等
要退出所有 N 个会话,我必须键入exit
N 次。
如何找出我在任何给定 bash 会话中嵌套的深度?
理想情况下,我正在寻找一些类似于$STY
屏幕会话的环境变量。
考虑:
numbers="1 111 5 23 56 211 63"
max=0
for num in ${numbers[@]}; do
[ $num -gt $max ]\
&& echo "old -> new max = $max -> $num"\
&& max=$num
done | tee logfile
echo "Max= $max"
Run Code Online (Sandbox Code Playgroud)
如果我删除| tee logfile
max 变量正确打印为 211,但如果我将它留在我得到Max= 0
.
到底是怎么回事?