GNU/Linux >> Znalost Linux >  >> Linux

Jak poznám, že mám spuštěný vnořený shell?

$SHLVL proměnná sleduje úroveň vnoření vašeho shellu:

$ echo $SHLVL
1
$ bash
$ echo $SHLVL
2
$ exit
$ echo $SHLVL
1

Alternativně k vytváření podsložek můžete přesunout a otevřít adresáře ze zásobníku a zůstat ve stejném prostředí:

[[email protected] /old/dir]# pushd /new/dir
/new/dir /old/dir
[[email protected] /new/dir]# popd
/old/dir
[[email protected] /old/dir]#

Zde je zjednodušená verze části mé výzvy:

PS1='$(((SHLVL>1))&&echo $SHLVL)\$ '

Pokud nejsem ve vnořeném prostředí, nepřidává to nic navíc, ale zobrazuje hloubku, pokud jsem v jakékoli úrovni vnoření.


Podívejte se na $0 :pokud začíná minus - , jste v přihlašovacím prostředí.


Linux
  1. Jak zjistit, zda Dd stále funguje?

  2. Jak Bash ví, jak je vyvoláván?

  3. Jak zjistit, zda je povoleno vícesměrové vysílání IP?

  1. Jak zabít běžící procesy v Linuxu

  2. Paralelní spuštění skriptu shellu

  3. Jak zkontrolovat, zda je aktuálně spuštěný shell BusyBox

  1. Jak zajistit, aby byly proměnné prostředí „exportovány“ do skriptu Shell?

  2. Na jakém Shellu běžím?

  3. Jak poznám, že běžím na linuxové obrazovce nebo ne?