天天看点

I/O重定向 Redirection

fd 文件描述符

普通文件和设备文件

进程通过文件描述符来访问该文件

0 标准输入

1 标准输出

2 错误输出 / 标准错误

输出重定向(覆盖,追加)

正确输出:1> 1>> 等价于 > >>

错误输出:2> 2>>

ls /dsada 2> ttest.log 错误重定向,将错误日志输出到ttest.log

I/O重定向 Redirection

查看某个进程打开哪些文件

ll /proc/pid/fd

echo $$ 当前bash的进程

ll /proc/$$/fd 查看当前终端bash打开文件

/dev/null 设备被删除后重建 rm /dev/null

1、手动创建

mknod -m 666 /dev/null c 1 3

2、重启系统自动创建

两条命令等价

dd if=/dev/zero of=/home/file.txt bs=1M count=20

dd /zero >/home/file bs=1M count=20

普通文件和字符文件的区别

字符文件:主设备号和从设备号(8,0)(8,1)

主设备号相同,表示为同一种设备类型,也可以认为kernel模块相同

从设备号:在同一类型设备中的一个序号

c:表示字符设备 b:块设备

两种设备区别:

块设备有缓存(硬盘)

crw-rw-rw-. 1 root root 1, 3 Dec 17 01:51 /dev/null

-rw-r--r--. 1 root root 956 Nov 21 03:34 /etc/passwd

brw-rw----. 1 root disk 8, 0 Dec 17 01:51 /dev/sda

brw-rw----. 1 root disk 8, 1 Dec 17 01:51 /dev/sda1

brw-rw----. 1 root disk 8, 2 Dec 17 01:51 /dev/sda2

I/O重定向 Redirection