Linux系统重定向管道
一、重定向
1.标准输入、标准输出、标准错误
1.1FD简介
- file descriptors ,文件描述符,进程使用文件描述符来管理打开的文件,是链接文件。
1.2图示
- FD是访问文件的标识,即链接文件
0是标准输入,可理解为键盘鼠标
1是标准正确输出
2是标准错误输出
1,2是终端可以理解是屏幕
3+是文件,可读可写
1.3示例
通过非常熟悉的VIM程序,来观察一个进程的FD信息。
1.通过一个终端,打开一个文本。
[root@localhost ~]# vim 1.txt
2.通过另一个终端,查询文本程序的进程号。
[root@localhost ~]# ps aux | grep vim
root 8457 0.5 0.5 149712 5456 pts/0 S+ 19:11 0:00 vim 1.txt
root 9137 0.0 0.0 112728 972 pts/2 R+ 19:11 0:00 grep --color=auto vim
3.在 /proc/pid/fd 目录中查看文本程序的FD
[root@localhost ~]# ll /proc/8457/fd //8457为vim进程pid
总用量 0
lrwx------. 1 root root 64 7月 30 19:13 0 -> /dev/pts/0
lrwx------. 1 root root 64 7月 30 19:13 1 -> /dev/pts/0
lrwx------. 1 root root 64 7月 30 19:11 2 -> /dev/pts/0
lrwx------. 1 root root 64 7月 30 19:13 4 -> /root/.1.txt.swp
4.看到的0124就是FD,程序通过描述符访问文件,可以是常规文件,也可以是设备文件。
2.重定向案例
2.1输出重定向及综合案例
- 输出重定向分为:
1.正确输出:1>等价于>,意为覆盖。1>>等价于>>,意为追加。
2.错误输出:2>无简写,覆盖。2>>无简写,追加。
- 案例1:输出重定向