Linux重定向管道

重定向

什么是重定向?

Linux中的重定向是指将要输出显示到显示器即终端显示的数据信息,重新指向到某一特指的文件中,或定向到黑洞(/dev/null)中。

重定向有什么用?
1、当程序中输出信息过多,需要将信息存储到指定文件进行查看
2、将后台程序输出信息存储到指定文件,便于后续查看与终端继续使用
3、将正确与错误信息分开收集到不同指定文件

标准输入、标准输出、错误输出

文件描述符(file descriptors),简称FD。文件句柄进程使用文件描述符来管理打开的文件。
在这里插入图片描述
在终端中标准输入指令时并执行后的标准输出或标准错误输出呈现在显示器中的过程,所看到的都是文件句柄进程运行的结果。
在这里插入图片描述

输出重定向

正确输出

1>等价于> 覆盖
1>>等价于>> 追加

Example:

date > 1.txt 
date >> 1.txt 

错误输出

2> 覆盖
2>> 追加

Example:

data 2> 1.txt
data 2>> 1.txt

正确错误一同输出

&> 覆盖
&>> 追加

管道

管道使用
将多条命令组合起来,一次性处理复杂的处理任务
command1 | command2 | command3 …
示例

[root@localhost ~]# cat /etc/passwd | grep user
#筛选配置文件中含有user字段的内容

tee管道

tee管道又称三管道,即交给一个程序处理,又保存一份副本
在这里插入图片描述
示例

[root@localhost ~]# cat /etc/passwd | tee 8888.txt | tail -1
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
[root@localhost ~]# cat 8888.txt | head -4
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

参数传递Xargs

Xargs可将文件中的文本信息作为参数传递个指令运行
语法格式:cat file1.txt | xargs rm -rf

示例

#创建5个文件
[root@localhost ~]# touch /home/file{1..5}
#创建files文件将刚创建5个文件的绝对路径存储在内
[root@localhost ~]# vim files.txt 
/home/file1
/home/file3
/home/file5
#使用xrags参数传递给指令
[root@localhost ~]# cat files.txt |xargs rm -rvf 
removed ‘/home/file1’
removed ‘/home/file3’
removed ‘/home/file5’
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

弘雷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值