Linux重定向管道——双通、三通管道一篇学会【CenOs】

Linux重定向管道是指修改原来默认的一些东西,对原来系统命令的默认执行方式进行改变。

如:
date > date.txt 将日期输出到date文件

FD:file descriptors ,FD,文件描述符,文件句柄

FD是访问文件的标识,即链接文件

0stdin 标准输入,位置 /dev/stdin, 缺省为键盘,也可以是文件或其他命令的输出
1stdout 标准输出,位置 /dev/stdout, 缺省为 Terminal,也可以是文件
2stderr 标准错误,位置 /dev/stderr, 缺省为 Terminal,也可以是文件

other files

通常在 /proc/PID/fd 就能看到文件的FD调用情况

看到的0123就是FD,程序通过描述符访问文件,可以是常规文件,也可以是设备文件。

覆盖

ls /home/ 2> list.txt 指令无错误,文件没有被写入信息
yum install httpd &>/dev/null 如生产环境 ,&代表1,2都写入

mail -s “标题” 用户名 发送邮件
mail -s “test01” alice < word.txt 套用word.txt作为邮件内容(原理:利用输入重定向,把文件内容代替人为的输入。)

进程管道 Piping
管道命令可以将多条命令组合起来,一次性完成复杂的处理任务。

例如
cat /etc/passwd | tail -3
ps aux | grep ‘sshd’


例如
cat /etc/passwd |tee user.txt | tail -5 查看用户并记录,显示出最后5条信息

参数传递 Xargs

touch file{1…5} 创建文件file1-5
ls 查看文件是否创建成功

要求: 查看并删除file1-3
vim file
file1
file2
file3

cat file.txt |rm -rvf 尝试命令,但发现没有生效

尝试使用

cat file | xargs rm -rvf

查看是否删除 ls

如图,另外操作

后面部分在final shell中完成

©著作权归作者所有:来自51CTO博客作者是维C呀的原创作品,如需转载,请注明出处,否则将追究法律责任