it-swarm-ja.tech

私がいるシェルの「レベル」を知る方法は?

xtermのようなターミナルを開くと、シェルが作成されます。次に、sshまたはzshを使用すると、シェルの別の「レベル」ができます。私が何回しなければならないかを知る方法はありますかCtrl+Dまたはexitと入力して、すべて終了しますか?私の真の意図は、「ルート」シェル以外のすべてを終了することです。

また、ターミナルマルチプレクサ(screenなど)がソリューションにどのような影響を与えるかを知っておくと便利です。

PS:タイトルを自由に変更してください。これらが正しい用語かどうかはわかりません。

32
phunehehe

環境変数[〜#〜] shlvl [〜#〜]を使用できます:

echo "$SHLVL"
1
Alex

あまりエレガントではありませんが、 htoptree viewを使用して、シェルと他の実行中のプロセスの親子関係を確認できます。

$ htop # then press 't' and scroll around or 'Ctrl-W' to find your Shell proccess

そして、それを使用して、「ルート」シェルに到達する前に、終了する必要があるシェルの量を推定します。

1
Stefan