linux说明管道的作用,Linux管道及重定向的用途是什么

1、重定向在Linux中有时我们在命令的执行过程中,不想将执行结果显示到屏幕上,或者将其结果输出到其他位置

这时就需要重定向来解决这个问题了

首先了解一下Linux中的3种I/O设备:

0:标准输入

1:标准输出

2:标准错误输出

输出重定向:>  >>  输入重定向: 

>:将标准输出重定向到文件

echo "Hello" > /app/test.tab

2>:将标准错误输出重定向到文件

ls /etc /error > /app/test.tab 2> /app/error.tab

&>:将所有输出重定向到文件

ls /etc /error &> /app/test.tab

>>:将标准输出追加重定向到文件

2>>:将标准错误输出追加到文件

&>>:将所有标准输出追加到文件

<:>

<<:>

wc -l 

mail -s "help" root <

指定退出时的终止符

>please help me

>thanks

>eof

2、管道符号 "|" ,用来连接命令

CMD1 | CMD2 | CMD3 | …

(1)将CMD1的标准输出传给CMD2,CMD2的标准输出输出再发给CMD3

(2)默认情况下标准错误输出不能通过管道转发,通过2>&1或|&来实现eg: [root@Centos6 ~]#cat /etc/issue /error 2>&1 | sort

cat: /error: No such file or directory

CentOS release 6.9 (Final)

Kernel \r on an \m(3)最后一个命令会在当前shell进程的子shell进程中执行

3、”-“符号在管道中"-"可以用来代替之前命令标准输出eg: tar -cvf - /app | tar -xvf -   将/app下的文件打包,打包后不记录到文件里,而是传到标准输出在经管道传给后面的

解包命令

4、tee 命令 重定向到多个目标有时我们在使用管道时需要将不同阶段的数据输出到屏幕上,而还要将数据向下传递,我们就需要用到tee命令eg: [root@Centos6 ~]#ls | tee | tr "a-z" "A-Z"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/294152.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

磨刀不误砍柴工—Exceptionless搭配log4net记录日志

Exceptionless专注于.net平台提供实时错误和日志报告。主要包括&#xff1a;错误通知、智能分组异常、详细错误报告堆栈跟踪、支持离线、UI查看重要错误和确定优先级、仪表板上的统计信息和趋势、对异常标记为已修复&#xff0c;监视回归、将事件标记为关键等。主要是用于展示、…

豆瓣9.6分!再一次被BBC的纪录片震惊!

英国广播公司BBC的纪录片素来就是高质量的代名词&#xff0c;推出的《地球无限》(Planet Earth)、《地球的力量》(Earth The Power of the Planet)、《冷血生命》(Life In Cold Blood)等片不仅在英国播放时获得极高收视&#xff0c;还获得艾美奖等多个国际奖项的肯定&#xff0…

C++中事件机制的简洁实现

事件模型是被广泛使用的好东西&#xff0c;但是C标准库里没有现成的&#xff0c;其他实现又复杂或者不优雅&#xff0c;比如需要使用宏。现在VC11可以用在XP下了&#xff0c;那么就痛快的拿起C11提供的先进设施组合出一个轻便的实现吧。 为了达到简洁的目的&#xff0c;需要放弃…

监测京东商品价格波动

写着玩的&#xff0c;不用再去每天看要买的商品是否降价&#xff0c;如果降价就发布一条推文。 #!/usr/bin/env python # coding: utf-8 import tweepy import requests import re import sys import datetime import json # 京东的编码是gbk reload(sys) sys.setdefaultencodi…

Andorid之Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)的用法总结

在调试代码的时候我们需要查看调试信息&#xff0c;那我们就需要用Android Log类。 android.util.Log常用的方法有以下5个&#xff1a;Log.v() Log.d() Log.i() Log.w() 以及 Log.e() 。根据首字母对应VERBOSE&#xff0c;DEBUG,INFO, WARN&#xff0c;ERROR。 1、Log.v 的调…

SharePoint 2010 master page 控件介绍(5):其他

转&#xff1a;http://blog.csdn.net/lgm97/article/details/6409227 <!-- 处理搜索按下“enter”键和点击后退按钮 --> <input type"text" name"__spDummyText1" style"display:none;" size"1"/> <input type"te…

linux iotop rpm,iotop命令_Linux iotop 命令用法详解:用来监视磁盘I/O使用状况的工具...

iotop命令是一个用来监视磁盘I/O使用状况的top类工具。iotop具有与top相似的UI&#xff0c;其中包括PID、用户、I/O、进程等相关信息。Linux下的IO统计工具如iostat&#xff0c;nmon等大多数是只能统计到per设备的读写情况&#xff0c;如果你想知道每个进程是如何使用IO的就比较…

.NET 6新特性试用 | LINQ功能改进

前言.NET6为LINQ添加了多个新API&#xff0c;在本文中&#xff0c;我们将始终使用User类逐一演示这些添加到LINQ中的内容&#xff1a;public class User {public string Name { get; set; }public int Age { get; set; } }*By方法包括下列方法&#xff1a;DistinctBy: 根据指定…

VS2010下的多线程窗口

多线程的调试一直是一个令人蛋疼的问题&#xff0c;一般的解决方法是写Log。有的时候想要直观地看一下线程的运行状态&#xff0c;简直是困难。幸好vs2010给我们提供了一个多线程窗口。 使用方式&#xff1a; 1、按F5进入调试状态下 2、按图1所示打开多线程窗口 图1 打开多线程…

linux cp 强制yes,linux cp实现强制覆盖

说明&#xff1a;linux下使用cp -fr src dest&#xff0c;发现即使加了-f也是不能强行覆盖的&#xff0c;这是为什么呢&#xff1f;原因&#xff1a;-f其实已经会强制覆盖了&#xff0c;但部份服务器会默认增加别名alias cp’cp -i’&#xff0c;因此当你执行cp时&#xff0c;其…

第2天:汇编语言与Makefile

汇编语言指令 ORG&#xff1a;origin&#xff0c;指定程序从某个地址开始&#xff0c;即把程序装载到内存的某个地址。 如&#xff1a;ORG 0x7c00&#xff0c;0x7c00作为是英特尔指定的。JMP&#xff1a;jump&#xff0c;跳转指令。entry, msg, loop&#xff1a;自定义标签&…

Android之如何用cmd方法查看logcat

使用cmd命令查看logcat 使用adb logcat命令可查看android系统和应用的log adb logcat //显示全部日志 adb logcat > c:\test.log //将日志输出保存到文件test.log logcat日志中的优先级/tag标记: android输出的每一条日志都有一个标记和优先级与其关联。 优先级是下面的…

Typora 开始收费, 不妨试试这个开源免费的MD编辑器

相信大家很多人都已经知道了, 最好用最受欢迎的 markdown 编辑器 - Typora, 从 1.0.0 版本已经开始收费, 根据其官网的介绍, 收费方式为买断制, 也就是一次付费永久使用, 价格是14.99 刀, 另外支持支付宝付款, 89 元人民币, 最多支持3台设备使用, 对于我来说, 算上家里和公司的…

MySQL - Found option without preceding group in config file

1.1.1 现象 启动MYSQL超时&#xff0c;windows提示错误&#xff0c;在服务中MYSQL状态一直处于starting状态&#xff0c;执行MYSQL命令&#xff0c;出现如下错误信息&#xff1a; error:found option without preceding group in config file:E:\webserver\mysql5\my.ini at li…

31天重构学习笔记19. 提取工厂类

概念&#xff1a;本文中的“提取工厂类”是指如果要创建的对象很多&#xff0c;则代码会变的很复杂。一种很好的方法就是提取工厂类。 正文&#xff1a;一般来说我们需要在代码中设置一些对象&#xff0c;以便获得它们的状态&#xff0c;从而使用对象&#xff0c;所谓的设置通常…

linux+4.4+android,Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法

Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法跟Ubuntu 12.04 - 13.10 以及jellybean编译环境配置没多大区别, 顺便记录下而已:64位Ubuntu 11.10下Android开发环境的搭建(JDKEclipseADTAndroid SDK详细) http://www.linuxidc.com/Linux/2013-06/85303.htm一、配置依赖…

Android之定时器实现的几种方式和removeCallbacks失效问题详解

转载&#xff1a;http://blog.csdn.net/xiaanming/article/details/9011193 实现定时器有很多种方式&#xff0c;在这里我简单的介绍几种方式 实现定时器有很多种方式&#xff0c;在这里我简单的介绍几种方式 (1)使用Handler Runnable的方式 Handler handler new Handler(…

android中的ContentProvider实现数据共享

为了在应用程序之间交换数据&#xff0c;android中提供了ContentProvider&#xff0c;ContentProvider是不同应用程序之间进行数据交换的标准API。当一个应用程序需要把自己的数据暴露给其他程序使用时&#xff0c;该应用程序可以通过提供contentProvider来实现&#xff0c;其他…