Nivel de shell identifica el nivel de sub-shell en un shell anidado
Bash man - Shell Level SHLVL
SHLVL: se incrementa en uno cada vez que se inicia una nueva instancia de Bash.
- Esto pretende ser un recuento de cuán profundamente están anidados sus shells de Bash.
Como puedes ver aqui
Cuando se bashejecuta, el nivel de shell bash es más alto en 1
La siguiente llamada recursiva a bash:
$ echo "bash haha" > haha
$ bash haha
Recibí este mensaje periódicamente:
bash: advertencia: nivel de shell (1000) demasiado alto, restableciendo a 1
El significado del error anterior es que bash se llamó 1000 veces
Otro ejemplo de cómo la variable $ SHLVL rastrea su nivel de anidación de shell:
$ echo $SHLVL
1
$ bash
$ echo $SHLVL
2
$ exit
$ echo $SHLVL
1
Makefiledebido a cómo y dónde (dentro de unaifneqcláusula) estaba ejecutando comandos que usaríavagrant ssh -c, tuve que ejecutarlo dentro de una declaración usando&&. Quizás esto ayude a alguien.