在Linux系统的设备特殊文件目录/dev/下,终端设备文件有以下几种:
1)当前控制终端(/dev/tty),tty是所有终端的统称,包括串口、控制台终端以及伪终端设备。通过tty命令可以知道当前具体是什么终端(所以tty也代表当前的终端,echo hello > /dev/tty都会显示在当前的终端中,可能是上面的任意一种终端)。/dev/tty是当前进程的控制终端的设备文件,可以使用命令”ps –ax”来查看进程与哪个控制终端相连。
2)串行端口终端(/dev/ttySn),计算机把每个串行端口都看作是一个字符设备,若要向一个端口发送数据,可以在命令行上把标准输出重定向到这些特殊文件名上即可。例如,在命令行提示符下键入:echo test > /dev/ttyS1会把单词”test”发送到连接在ttyS1(COM2)端口的设备上。
3)控制台终端(/dev/ttyn,/dev/console),使用Alt+[F1~6]组合键时,我们可以在tty1、tty2…切换,tty1~tty6等称为虚拟控制台,而tty0则是当前所使用的虚拟控制台的一个别名,系统产生的信息会发送到该终端上。
4)虚拟终端(dev/pts/n)或者叫伪终端,在XWindows模式下的伪终端,另外远程登陆的用户,就是使用telnet、ssh等远程登陆的用户,他的终端显示就是pts/n。pts是pty的实现方法,与ptmx配合使用实现pty。