回显正在运行的终端类型

时间:2013-08-26 13:59:16

标签: linux shell

我正在尝试回显当前正在运行的终端的类型。例如,如果我正在运行konsole,那么它将回应konsole。我试过了

echo $TERM

但是每次都打印出xterm。有没有更好更准确的方法呢?

1 个答案:

答案 0 :(得分:6)

pstree可以提供帮助。

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

-s选项显示指定进程的父级。

在bash(和Bourne-shell变体)中,$$表示当前shell的PID。

另一个调用(从xterm运行时返回):

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

指定-A选项使pstree使用ASCII字符,以便您可以轻松地解析输出:

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