- 浏览: 4752498 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
bzhao:
你也应该可以这样:(not tested)./rbtunnel ...
在Bash脚本中怎么关闭文件描述符? -
bzhao:
如果有A进程原代码情况下,通过如下调用,把他的子进程继承关闭则 ...
在Bash脚本中怎么关闭文件描述符? -
Master-Gao:
楼主咋没分析下源码呢?
我使用过的Linux命令之dirname - 截取给定路径的目录部分 -
jiedushi:
tail -F 就可以吧
Linux下实时跟踪log4j日志文件的bash脚本 - 增强了tail -f的功能 -
java_is_new:
新手学习了,就是不明白为一个网卡配多个ip有什么用
我使用过的Linux命令之ifconfig - 网络配置命令
我使用过的Linux命令之tty - 打印标准输入的文件名称
本文链接:http://codingstandards.iteye.com/blog/826759 (转载请注明出处)
用途说明
tty命令用于打印标准输入的文件名称(print the file name of the terminal connected to standard input,打印与标准输入连接的终端设备的文件名称)。在Linux系统中,终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。tty是Teletype的缩写,Teletype是最早出现的一种终端设备,很像电传打字机,是由Teletype公司生产的。在Linux系统中,终端设备非常重要,没有终端设备,系统将无法向用户反馈信息,Linux中包含控制台、串口和伪终端3类终端设备。本文后面提供很多相关资料,很值得一看。
常用参数
tty命令不跟任何参数,会打印标准输入设备的文件名称,如果标准输入不是终端设备时,打印“not a tty”,否则打印终端设备名称,比如“/etc/tty1”、“/etc/pts/1”。(`tty' prints the file name of the terminal connected to its standard
input. It prints `not a tty' if standard input is not a terminal.)
tty命令跟上参数-s(或--silent或--quiet),不会打印任何信息,根据退出状态可以用来判断标准输入是否是终端。(Print nothing; only return an exit status.)
tty命令的退出状态:如果标准输入是终端时为0,否则返回1。(Exit status: 0 if standard input is a terminal,1 if standard input is not a terminal,2 if given incorrect arguments,3 if a write error occurs)
使用示例
示例一 在控制台终端上执行tty
[root@localhost data]# tty
/dev/tty1
[root@localhost data]#
示例二 在伪终端上执行tty
[root@web ~]# tty
/dev/pts/1
[root@web ~]#
示例三 在脚本中判断
#!/bin/sh if tty -s; then echo "it's a terminal" fi if [ "$(tty)" != "not a tty" ]; then echo "it's a terminal" fi
[root@web ~]# cat tty.sh
#!/bin/sh
if tty -s; then
echo "it's a terminal"
fi
if [ "$(tty)" != "not a tty" ]; then
echo "it's a terminal"
fi
[root@web ~]# ./tty.sh
it's a terminal
it's a terminal
[root@web ~]# ./tty.sh < /dev/null
[root@web ~]# ./tty.sh < ./tty.sh
[root@web ~]#
示例四 显示系统中的终端设备
[root@web ~]# ls -l /dev/console /dev/tty* /dev/pts*
crw------- 1 root root 5, 1 11-28 10:42 /dev/console
crw-rw-rw- 1 root tty 5, 0 11-22 17:21 /dev/tty
crw-rw---- 1 root tty 4, 0 11-28 10:37 /dev/tty0
crw------- 1 root root 4, 1 08-01 20:23 /dev/tty1
crw-rw---- 1 root tty 4, 10 08-01 20:18 /dev/tty10
crw-rw---- 1 root tty 4, 11 08-01 20:18 /dev/tty11
crw-rw---- 1 root tty 4, 12 08-01 20:18 /dev/tty12
crw-rw---- 1 root tty 4, 13 08-01 20:19 /dev/tty13
crw-rw---- 1 root tty 4, 14 08-01 20:19 /dev/tty14
crw-rw---- 1 root tty 4, 15 08-01 20:19 /dev/tty15
crw-rw---- 1 root tty 4, 16 08-01 20:19 /dev/tty16
crw-rw---- 1 root tty 4, 17 08-01 20:19 /dev/tty17
crw-rw---- 1 root tty 4, 18 08-01 20:19 /dev/tty18
crw-rw---- 1 root tty 4, 19 08-01 20:19 /dev/tty19
crw------- 1 root root 4, 2 08-01 20:23 /dev/tty2
crw-rw---- 1 root tty 4, 20 08-01 20:19 /dev/tty20
crw-rw---- 1 root tty 4, 21 08-01 20:19 /dev/tty21
crw-rw---- 1 root tty 4, 22 08-01 20:19 /dev/tty22
crw-rw---- 1 root tty 4, 23 08-01 20:19 /dev/tty23
crw-rw---- 1 root tty 4, 24 08-01 20:19 /dev/tty24
crw-rw---- 1 root tty 4, 25 08-01 20:19 /dev/tty25
crw-rw---- 1 root tty 4, 26 08-01 20:19 /dev/tty26
crw-rw---- 1 root tty 4, 27 08-01 20:19 /dev/tty27
crw-rw---- 1 root tty 4, 28 08-01 20:19 /dev/tty28
crw-rw---- 1 root tty 4, 29 08-01 20:19 /dev/tty29
crw------- 1 root root 4, 3 08-01 20:23 /dev/tty3
crw-rw---- 1 root tty 4, 30 08-01 20:19 /dev/tty30
crw-rw---- 1 root tty 4, 31 08-01 20:19 /dev/tty31
crw-rw---- 1 root tty 4, 32 08-01 20:19 /dev/tty32
crw-rw---- 1 root tty 4, 33 08-01 20:19 /dev/tty33
crw-rw---- 1 root tty 4, 34 08-01 20:19 /dev/tty34
crw-rw---- 1 root tty 4, 35 08-01 20:19 /dev/tty35
crw-rw---- 1 root tty 4, 36 08-01 20:19 /dev/tty36
crw-rw---- 1 root tty 4, 37 08-01 20:19 /dev/tty37
crw-rw---- 1 root tty 4, 38 08-01 20:19 /dev/tty38
crw-rw---- 1 root tty 4, 39 08-01 20:19 /dev/tty39
crw------- 1 root root 4, 4 08-01 20:23 /dev/tty4
crw-rw---- 1 root tty 4, 40 08-01 20:19 /dev/tty40
crw-rw---- 1 root tty 4, 41 08-01 20:19 /dev/tty41
crw-rw---- 1 root tty 4, 42 08-01 20:19 /dev/tty42
crw-rw---- 1 root tty 4, 43 08-01 20:19 /dev/tty43
crw-rw---- 1 root tty 4, 44 08-01 20:19 /dev/tty44
crw-rw---- 1 root tty 4, 45 08-01 20:19 /dev/tty45
crw-rw---- 1 root tty 4, 46 08-01 20:19 /dev/tty46
crw-rw---- 1 root tty 4, 47 08-01 20:19 /dev/tty47
crw-rw---- 1 root tty 4, 48 08-01 20:19 /dev/tty48
crw-rw---- 1 root tty 4, 49 08-01 20:19 /dev/tty49
crw------- 1 root root 4, 5 08-01 20:23 /dev/tty5
crw-rw---- 1 root tty 4, 50 08-01 20:19 /dev/tty50
crw-rw---- 1 root tty 4, 51 08-01 20:19 /dev/tty51
crw-rw---- 1 root tty 4, 52 08-01 20:19 /dev/tty52
crw-rw---- 1 root tty 4, 53 08-01 20:19 /dev/tty53
crw-rw---- 1 root tty 4, 54 08-01 20:19 /dev/tty54
crw-rw---- 1 root tty 4, 55 08-01 20:19 /dev/tty55
crw-rw---- 1 root tty 4, 56 08-01 20:19 /dev/tty56
crw-rw---- 1 root tty 4, 57 08-01 20:19 /dev/tty57
crw-rw---- 1 root tty 4, 58 08-01 20:19 /dev/tty58
crw-rw---- 1 root tty 4, 59 08-01 20:19 /dev/tty59
crw------- 1 root root 4, 6 08-01 20:23 /dev/tty6
crw-rw---- 1 root tty 4, 60 08-01 20:19 /dev/tty60
crw-rw---- 1 root tty 4, 61 08-01 20:19 /dev/tty61
crw-rw---- 1 root tty 4, 62 08-01 20:19 /dev/tty62
crw-rw---- 1 root tty 4, 63 08-01 20:19 /dev/tty63
crw-rw---- 1 root tty 4, 7 08-01 20:18 /dev/tty7
crw-rw---- 1 root tty 4, 8 08-01 20:18 /dev/tty8
crw-rw---- 1 root tty 4, 9 08-01 20:18 /dev/tty9
crw-rw---- 1 root uucp 4, 64 08-01 20:18 /dev/ttyS0
crw-rw---- 1 root uucp 4, 65 08-01 20:18 /dev/ttyS1
crw-rw---- 1 root uucp 4, 66 08-01 20:18 /dev/ttyS2
crw-rw---- 1 root uucp 4, 67 08-01 20:18 /dev/ttyS3
/dev/pts:
总计 0
crw--w---- 1 root tty 136, 0 11-28 10:37 0
crw--w---- 1 root tty 136, 1 11-28 10:43 1
crw--w---- 1 root tty 136, 7 10-11 23:16 7
[root@web ~]#
问题思考
相关资料
【1】中国IT实验室 Linux 指令篇:网络通讯--tty
【2】it群 Linux终端tty设备驱动
【3】ChinaUnix linux tty pty pts 概念 区别
【4】CalmArrow 理解tty
【5】英文资料 Linux解密 The TTY demystified
发表评论
-
在Linux用tar归档压缩文件时忽略某些文件和目录
2013-02-01 10:19 17048在Linux下,常用tar对文 ... -
使用nmap扫描服务器端口的一次操作
2012-11-01 17:00 15137使用nmap扫描服务器端口的一次操作 本文来自:http ... -
我使用过的Linux命令之wget - ooo
2011-09-14 13:10 0我使用过的Linux命令之wg ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:53 9145简明 Vim 练级攻略 http://coolshell.c ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:49 1简明 Vim 练级攻略 http://coolshell.c ... -
我使用过的Linux命令之:(冒号) - 啥也不做(除了……)
2011-08-29 13:18 12095我使用过的Linux命令之: ... -
我使用过的Linux命令之date - 显示、修改系统日期时间
2011-08-25 09:21 41979我使用过的Linux命令之da ... -
我使用过的Linux命令之declare - 声明shell变量(不知道没关系、知道了就更好的内建命令)
2011-08-16 09:22 21825我使用过的Linux命令之declare - 声明shell变 ... -
我使用过的Linux命令之alias - 设置命令的别名,让 Linux 命令更简练
2011-08-11 09:31 28819我使用过的Linux命令之alias - 设置命令的别名,让 ... -
我使用过的Linux命令之ar - 创建静态库.a文件
2011-08-08 10:40 51927我使用过的Linux命令之ar - 创建静态库.a文件 本 ... -
我使用过的Linux命令之crontab - 设置例行任务(类似于Windows中的任务计划)
2011-08-04 22:26 9744我使用过的Linux命令之crontab - 设置例行任务(类 ... -
我使用过的Linux命令之chmod - 改变文件/目录的访问权限
2011-08-03 21:33 10701我使用过的Linux命令之chmod - 改变文件/目录的访问 ... -
我使用过的Linux命令之export - 设置或显示环境变量
2011-08-02 19:55 25437我使用过的Linux命令之export - 设置或显示环境变量 ... -
我使用过的Linux命令之wc - 统计文件行数、单词数或字节数
2011-07-26 10:50 29006我使用过的Linux命令之wc - 统计文件行数、单词数或字节 ... -
我使用过的Linux命令之groupdel - 删除群组
2011-07-22 22:13 9686我使用过的Linux命令之gr ... -
我使用过的Linux命令之ifconfig - 网络配置命令
2011-07-21 20:43 60527我使用过的Linux命令之ifconfig - 网络配置命令 ... -
我使用过的Linux命令之ll - 列出文件/目录的详细信息
2011-07-20 21:22 7203我使用过的Linux命令之ll ... -
我使用过的Linux命令之mkdir - 创建目录
2011-07-20 20:58 13682我使用过的Linux命令之mkdir - 创建目录 本文链 ... -
我使用过的Linux命令之perror - 解释错误代码
2011-07-18 20:29 25075我使用过的Linux命令之perror - 解释错误代码 ... -
我使用过的Linux命令之ping - 测试与目标主机的连通性
2011-07-16 10:46 26602我使用过的Linux命令之ping - 测试与目标主机的连通性 ...
相关推荐
### Linux命令手册中文版知识点概览 #### 一、ytalk **命令简介:** ytalk 命令用于在 Linux 系统中实现简单的网络通信功能,类似于 Unix 的 talk 命令。该命令允许两个用户通过网络进行即时文本聊天。 **基本用法...
### Red Hat Linux命令大全解析 #### 一、系统管理与控制 - **login**: 用户登录命令,用于切换或建立新的用户会话。 - **logout** 和 **exit**: 用于退出当前用户会话,返回到登录界面或上一个shell。 - **...
Linux控制台使用和Shell命令执行是Linux操作系统中用户与系统交互的基础。在RHEL 7(Red Hat Enterprise Linux 7)版本中,这些操作同样重要,并且与旧版本相比有许多改进和特性。为了更好地理解和掌握Linux控制台的...
38. **tee** - 读取标准输入并写入文件。 39. **tmpwatch** - 清理临时文件。 40. **touch** - 修改文件的时间戳或创建空文件。 41. **umask** - 设置新建文件的默认权限掩码。 42. **which** - 查找可执行文件的...
### Linux基础命令shell指令详解 #### 一、Shell指令概览 在Linux系统中,**shell** 是一种用户与操作系统内核之间的交互界面。它既是一个命令解释器,也是一个编程语言环境,允许用户通过文本界面来执行各种命令、...
- **作用**: `cat` 命令用于连接文件并打印到标准输出。 - **格式**: `cat [选项] 文件` - **主要参数**: - `-n`: 显示行号。 - **示例**: `cat -n filename` 显示 `filename` 的内容并标注行号。 11. **ln** ...
**作用:** `cat` 命令用于连接文件并打印到标准输出设备上。 **格式:** `cat [选项] 文件` **示例:** 显示文件内容: ``` cat filename.txt ``` ##### 10. ln **作用:** `ln` 命令用于创建链接。 **格式:** `ln ...
### Unix/Linux命令大全知识点 #### 一、启动、关机、登入、登出相关命令 - **登录**:`<login>` - 用户登录系统。 - **登出**:`<logout>` - 用户登出系统。 - **登出**:`<exit>` - 退出当前会话。 - **停止系统...
### Linux入门必学的60个命令实例详解 #### 一、引言 Linux系统以其稳定性和安全性在服务器领域占据主导地位,对于IT专业...在后续的文章中,我们将继续介绍其他类别的命令,帮助读者全面掌握Linux命令的使用技巧。
使用`cd`命令时,如果当前目录下存在目标目录,可以直接输入该目录名快速切换,无需完整路径。例如: ```bash cd directory ``` 此外,`cd -`命令可以快速切换到上一个工作目录,方便用户在多个目录间切换。 #### ...
以可选块长度复制文件,默认情况下从标准输入设备输出到标准输出设备。复制过程中,还可以对文件进行一些转换。 df 显示参数中的文件所在分区磁盘空间的使用情况,如果没有给出文件参数就显示所有已经安装的文件...
`grep` 命令用于在文本或标准输入中搜索指定的模式。这里使用`grep`是为了过滤出特定的进程。 - **选项解析**: - `LOCAL=NO`:假设这是想要匹配的进程名,这里的`LOCAL=NO`表示过滤出名为`LOCAL=NO`的进程。 ####...
- **说明**:`lp` 命令用来打印文件。 - **常见选项**: - `-d <打印机名>`:指定要使用的打印机。 - `-n <份数>`:指定打印份数。 - **例子**: - `lp report.txt`:打印 `report.txt` 文件。 ##### 2.4 `...
4.35 tty指令:显示标准输入设备名称 4.36 uucp 指令:将特定文件复制到另一个特定系统 4.37 uulog指令:显示uucp记录信息 4.38 uuname指令:显示uucp远端主机 4.39 uustat指令:显示uucp状态 4.40 uux指令:在远端...