2

現在実行されている端末のタイプをエコーし​​ようとしています。たとえば、konsole を実行していた場合、konsole がエコーされます。走ってみた

echo $TERM

しかし、それは毎回 xterm を出力します。これを行うためのより良い、より正確な方法はありますか?

4

1 に答える 1

6

pstree助けられる。

$ pstree -s $$
init───gnome-terminal───bash───pstree

この-sオプションは、指定されたプロセスの親を示します。

bash (および Bourne シェルのバリアント) では$$、現在のシェルの PID を示します。

別の呼び出し (xtermリターンからの実行中):

$ pstree -s $$
init───xterm───bash───pstree

-Aこのオプションを指定pstreeすると、出力を簡単に解析できるように ASCII 文字が使用されます。

$ pstree -A -s $$ 
init---gnome-terminal---bash---pstree
于 2013-08-26T14:15:28.807 に答える