如何获得当前的终端名称?


17

如何获取当前的终端名称?

我的意思ps是TTY列中显示的名称,例如:

root@dor-desktop:/home/dor/Documents/LAMP_setup/webs_install/do/install# ps aux | egrep 'mysql|(^USER)'
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
dor       2238  0.2  1.9 448052 79796 ?        S    17:27   0:17 gedit /home/dor/Documents/LAMP_setup/webs_install/do/install/mysql.install /home/dor/Documents/LAMP_setup/webs_install/do/install/mysql.setup
root      4975  0.1  0.5 324984 22876 ?        S    18:12   0:04 gedit /usr/local/mysql/bin/mysqld_safe
root      8160  0.0  0.0   4108   664 pts/2    S    19:08   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --skip-networking --skip-grant-tables --user=mysql --basedir=/usr/local/mysql --ledir=/usr/local/mysql/libexec
mysql     8279  0.0  0.4 146552 19032 pts/2    Sl   19:08   0:00 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --skip-networking --skip-grant-tables --log-error=/usr/local/mysql/var/dor-desktop.err --pid-file=/usr/local/mysql/var/dor-desktop.pid --socket=/usr/local/mysql/mysql.sock --port=3306
root      8342  0.0  0.0   7632  1024 pts/2    R+   19:14   0:00 egrep --color=auto mysql|(^USER)

在上面的示例中,我需要获取pts/2可能是执行这些命令的当前终端的名称。


Answers:


26
tty

现在我必须输入30个字符,其中3个就足够了... :-)


apropos tty可能也很有启发性(-:
Tripleee

1
@tripleee如果您知道获得结果通常看起来很容易。但是,这确实很难。我应该赞成这个问题,以便将他踢到125个代表点边界上方,这样他就可以为我的努力提供应得的赏金……
Hauke Laging

2
您的回答让我想知道PTY或TTY的名称在哪里 tty。我跑去strace -o spork tty发现它在/ proc文件上执行了一个readlink:readlink("/proc/self/fd/0", "/dev/pts/5"..., 4095) = 10 可以使用/ proc来做这样的漂亮事情真是太好了,但是没有灵活的/ proc文件系统的早期Unix如何做来获得tty名称?
布鲁斯·埃迪格

您可以简单地解释该命令的含义,含义,它可以做什么以及可以用它做什么以及代码,这将是一个更好的答案。
鲍比,

@Bobby每个答案都可以做得更好。发问者两分钟后解决了问题。不错,恕我直言。说真的,我不知道您还能做什么tty。它所做的正是问题所在。我什至没有明白“该命令是什么”和“它做什么”之间的区别。什么是命令?但是,嘿,我不想一无所获。如果您写出一个明显更好的答案(可能是我的阻止了),那么我将为此奖励50代表赏金(有可能的话,即在两天内)。
Hauke Laging,

3

回复:“您可以简单地解释该命令的含义,含义,它的功能以及您可以用它做什么以及它的操作,这将是一个更好的答案。–鲍比”

当前终端(或控制台,我们的老年人有时也称其为控制台)的Unix名称为:/ dev / tty,可用于从命令提示符轻松创建新的多行文件:cp / dev / tty README.md(然后将光标放在新的空白行上,您可以在其中输入文本,再次单击回车键,输入第二行,依此类推。完成输入行后,请执行control-d,这将导致cp命令退出并且您将使用一个命令制作一个多行文件)。


“名称” tty是从TeleType(原始终端设备)派生的,它也解释了为什么它在/ dev目录中。
user120016 2015年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.