`

/dev/console,/dev/tty 和 /dev/null

阅读更多

UNIX和Linux中比较重要的三个设备文件是:/dev/console,/dev/tty和/dev/null。


0

/dev/console

这个设备代表的是系统控制台,错误信息和诊断信息通常会被发送到这个设备。
每个UNIX系统都会有一个指定的终端或显示屏用来接收控制台信息。

1

/dev/tty

如果一个进程有控制终端的话,那么/dev/tty就是这个控制终端的别名。

像cron这样的进程是没有控制终端的,因此它也就无法打开/dev/tty。

tty这个词源于Teletypes,最早是源于电传打印机。

如果你登录了一个shell,那么/dev/tty就是你当前使用的终端。你也可以用tty命令查看/dev/tty设备实际链接到的设备是哪个。

/dev/tty其实就是类似于“符号链接”一样的东西。像我的tty输出就是:

[root@wupengchong dev]# tty
/dev/pts/0

2

/dev/null

这是个空设备,也称为“位桶bit bucket”。所有写向这个设备的输出都将被丢弃,而如果你读/dev/null,则会立即得到一个文件尾标志而返回。

在cp命令里,可以用/dev/null来作为拷贝空文件的源文件。

在shell中,通常将不需要的东西重定向到/dev/null中。

这里要提一下/dev/zero,它和null是有区别的。通俗的讲,/dev/null是一个饭桶,你可以无穷无尽的往里塞垃圾,它不会埋怨。而/dev/zero是一个输入设备,它给你无穷无尽的提供0(就是null),它可以用于向文件或设备写入无穷无尽的0.

/dev/zero和/dev/null的用法比较:

$dd if=/dev/zero of=mydoc.txt bs=1k count=1

$find . -name “*.c” 2>/dev/null

本文来自: (www.91linux.com) 详细出处参考:http://www.91linux.com/html/article/go/20081130/14140.html

分享到:
评论

相关推荐

    实验八Linux设备编程技术

    tty0就是/dev/console,/dev/console指向当前虚拟终端。 /dev/tty1等代表第一个虚拟控制台 例如当使用ALT+F2进行切换时,系统的虚拟控制台为/dev/tty2 ,当前控制台(/dev/tty)则指向/dev/tty2

    2440QT移植

    export set QWS_KEYBOARD="TTY:/dev/tty1" if [ -f /sys/devices/virtual/input/input0/uevent ] ; then  export set TSLIB_TSDEVICE=/dev/event0  export set TSLIB_CALIBFILE=/etc/pointercal  export set ...

    Linux 设备模型之终端设备(tty)驱动架构分析

    终端设备 在 Linux 系统中,终端是一种字符型设备,它有多种类型,通常使用 tty 来简称各种类型的 终端设备。tty 是 Teletype 的缩写,Teletype 是最早出现的一种终端设备...3.控制台终端(/dev/ttyn, /dev/console)

    serial-console串口控制台1

    1. Create /dev/console (real console) and /dev/tty0 (master virtual 2. LILO can

    使用python3实现操作串口详解

    通过引用serial模块包,来操作串口。 1、查看串口名称 在Linux和Windows中,串口的名字规则不太一样。 需要事先查看。...crw–w—- 1 root tty 4, 66 Dec 26 06:41 /dev/ttyS2 crw-rw—- 1 root dialout 4,

    双网卡绑定

    双网卡绑定for tty in $(lsof /dev/tty* 2> /dev/null | egrep '[[:space:]]+/dev/tty[1-9][0-9]?$' | awk '{print $NF}'

    Shell脚本实现关闭多余的tty终端

    今天给公司新部署服务器进行优化,发现了tty终端居然有6个,为了节省点内存,决定只留一个tty终端,其他的都关闭掉,但centos6跟centos5的终端关闭方法完全变了,...sed -i ‘s/\/dev\/tty\[1-6\]/\/dev\/tty\[1-1\]/g’ /e

    一个stm32串口ISP程序

    (mac下的usb串口节点是 /dev/tty.usbserial) 1. 波特率固定为57600不允许修改。实际上测试了各种波特率,只有57600和38400可以稳定下载(程序写的还不太稳定吧),所以波特率固定为了57600。 2. 下载的是bin文件,...

    学习笔记一(分区类型,用户类型,shell的定义,命令执行的逻辑)

    学习笔记第一天分区类型GPTMBR用户类型root用户普通用户终端类型设备终端物理终端(/dev/console)串行终端(/dev/ttys#)虚拟终端(tty:teletypewriter,/dev/tty#)图形终端(/dev/tty7)startx,xwindows伪终端...

    tty0tty:空调制解调器仿真器

    模块-Linux内核模块null调制解调器pts-使用pty的null调制解调器(无握手行) 空调制解调器pts(unix98): 运行时,连接两个伪tty并显示连接名称: (/ dev / pts / 1)<=>(/ dev / pts / 2) 连接是: TX-...

    服务器部署中间件及依赖包的脚本,在centos 7.6系统可用

    dd if=/dev/tty bs=1 count=1 2> /dev/null stty -raw stty echo stty $SAVEDSTTY } wt(){ SCRIPT=$(whiptail --title "CheckList" --menu \ "Choosed deploy mode" 15 60 2 \ "01-single" "Single deploy ...

    fernvale-osx-codeless:osx 上 fernvale (mediatek) 的无代码串行驱动程序

    设备显示为 /dev/tty.usbmodem1410 和 /dev/cu.usbmodem1410 对我来说。 加载时必须使用 /dev/cu.usbmodem1410 接口 ##install 您需要禁用最近在某个时候成为强制性的签名 sudo nvram boot-args=kext-dev-mode=1 ...

    ADAM-6500/TTY

    ADAM-6500/TTY,串口读写程序,写屏幕程序

    ELDK使用与开发手册

    这是嵌入式PowerPC, ARM和MIPS系统中使用DENX U-Boot和Linux的指导手册。文档中描述了如何在嵌入式PowerPC, ARM和MIPS系统上配置、编译、使用Das U-Boot(常常缩写为“U-Boot”)和Linux操作系统。文档中涵盖了所有...

    Quectel_LTE&5G_USB_Driver_V2.1.zip

    snprintf(sysport, sizeof(sysport), "/sys/class/tty/%s", &ttyport[strlen("/dev/")]); count = readlink(sysport, syspath, sizeof(syspath) - 1); if (count (":1.0/tty")) return; //ttyUSB0 -> ../....

    PixelPusher-utilities:与 PixelPusher 一起使用的实用程序

    ./configtool /dev/tty.usbmodem12341 ./pixel.rc echo 或者像这样: ./configtool /dev/tty.usbmodem12341 ./pixel.rc no 或者经典: ./configtool /dev/tty.usbmodem12341 ./pixel.rc 这种方式也很时尚: .

    linux驱动开发proc文件初步

    1.7 TTY端口信息 /proc/tty 2 调整内核参数 2.1 /proc/sys/fs - 文件系统数据 2.2 /proc/sys/fs/binfmt_misc - 二进制可执行格式杂项 2.3 /proc/sys/kernel - 通用系统参数 2.4 /proc/sys/vm - 虚拟内存系统 2.5 /...

    ap6212a0_a33_sc3817r_神舟验证版本_借用nvram_ap6210这个配置文件_20170626_1834没有外层目录.7z

    [ 3.953017] Bluetooth: RFCOMM TTY layer initialized [ 3.958456] Bluetooth: RFCOMM socket layer initialized [ 3.964183] Bluetooth: RFCOMM ver 1.11 [ 3.968340] Bluetooth: BNEP (Ethernet Emulation) ver ...

    tinfo_replay:重播远程信息框架以进行测试的脚本

    Teleinfo记录和重播帧 Phyton脚本重播远程信息框架以进行测试 您已经需要有一个从智能电表抓取的文本文件,才能进行重放。 由于不在此范围内,因此此处不进行描述。 记录用法 只是看一下代码,它是我快速制作的工具...

    CaDSPracticalExamVS

    VS实践考试1 (c)2015年,CaDS Haw汉堡 信息 包括从VS实际考试第1部分开始的文件 联系人: 访问: : ...dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 roo

Global site tag (gtag.js) - Google Analytics