大多数linux命令处理数据后都会输出到标准输出,但是如果数据要经过系列列的步骤处理后,才是需要的数据个数,这种需求就需要管道来帮助完成。

管道命令使用"|"作为界定符,将界定符前的命令的执行结果作为界定符后的命令的输入继续处理。这里的执行方式和“连续执行命令”是不一样的。管道命令不仅强调界定符前后命令的依赖关系,而且还有一个非常重要的限制:

界定符前命令产生的执行结果必须输出到标准输出,界定符后的命令必须能够接收标准输入作为处理数据

下面通过几个例子熟悉下管道命令:

  1. /etc目录下的文件非常多,通常直接ls查看,屏幕无法全部显示,这是可以使用管道命令:
ls -al /etc | less

ls命令会将目录下的文件详细信息输出到标准输出,less能够接受标准输入作为处理数据。这样就重复利用了less命令前后查看的能力,甚至检索能力,帮组我们有效的查看需要的文件。

  1. 查看最近的有多少用户登录常使用last命令,但是last会输出非常多信息,如果要筛选只查看用户:
last | cut -d ' ' -f 1

last将最近的登录信息都输出到标准输出,cut接受标准输入作为入参,进行处理,最后再输出到标准输出进行显示。

使用管道命令的核心要点

  • 管道命令前的命令仅能处理标准输出,对于标准错误输出无处理能力;
  • 管道命令后的命令必须要能接受来自前一个命令的数据成为标准输入继续处理;

必须ls、cp等命令就不能接受来自stdin的数据。tail、head、less、more等就可以接受标准输入。

Linux中常用命令pipe的更多相关文章

  1. Linux中常用命令

    .cd命令 cd    回到跟目录 cd uqihong     进入到uqihong这个文件夹(且cd命令只能一级一级的进入) 2.复制命令      cp -r /usr/local/tomcat ...

  2. Linux中常用命令(文件与目录)

    1.pwd 查看当前目录(Print Working Directory) 2.cd 切换工作目录(Change Directory) (1)格式:cd [目录位置] 特殊目录: .当前目录 ..上一 ...

  3. Linux中常用命令的使用(一)

    这次只讲常用命令 先说命令的组成:命令一般由 (选项.命令.参数) 组成 下面就从开启一个Ubuntu开始说起 1.用户登录:在putty环境下,输完用户名在输入密码 别人想知道你用的linux系统 ...

  4. Linux 中常用命令

    命令基本格式: 命令提示符:[root@localhost ~]#      root 代表当前的登录用户(linux当中管理员账号是root)      @ 无实际意义      localhost ...

  5. Linux中常用命令 <一>

    本笔记中记录的命令来源于 <Linux C 编程实战> ------------------------------------------------------------------ ...

  6. linux中常用命令总结

    一关机/重启/注销 关机 shutdown -h now //立即关机 重启 shutdown -r now //立即重启 reboot 重新启动 注销 logout //退出注销当前用户窗口 exi ...

  7. Linux中常用命令(文件)

    1.cat 显示出文件的全部内容 (1)格式:cat 文件名 -n 显示行号 (2)特点:一次性显示所有文件内容 2.tac 从最后一行倒着显示文件全部内容 3.more 全屏方式分页显示文件内容 回 ...

  8. Linux中常用命令cat

    cat可谓是随处可用,全名:concatenate and print files.用于连接和打印文件,按序读取文件内容,然后输出到标准输出.如果文件是单个破折号-或者缺乏文件,cat将读取标准输入. ...

  9. linux中常用命令alias

    1.查看系统中所有的命令别名 alias 2.查看指定的别名 alias 别名 2.设定别名 alias 别名='原命令' 3.删除别名 unalias 别名 4.使别名永久生效 vi ~/.bash ...

随机推荐

  1. Python之虚拟环境

    场景:本地开发环境使用不同版本的包进行不同项目开发 总结:Linux通过配置环境变量来进行虚拟环境的切换,而Windows要通过虚拟环境目录下的Scripts的activate和deactivate进 ...

  2. Transformer---BERT模型

    一.BERT介绍 论文地址:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding  BERT ...

  3. Rikka with Travels(2019年杭电多校第九场07题+HDU6686+树形dp)

    目录 题目链接 题意 思路 代码 题目链接 传送门 题意 定义\(L(a,b)\)为结点\(a\)到结点\(b\)的路径上的结点数,问有种\(pair(L(a,b),L(c,d))\)取值,其中结点\ ...

  4. 搜狐视频 登录 md5 加密破解

    这是一个简单的md5加密,可以学习一下js加密的破解流程,当一个入门级的教程 第一步:请求抓包 password是32位的字母和数字组合,猜测可能是md5加密,我们md5在线工具上试一下 发现我们的猜 ...

  5. centos7下搭建JDK和Hadoop

    涉及基础操作命令 这里只是将涉及到的提了下一下具体的使用还需要读者自己查阅资料 tar 解压命令 su 进入root用户模式 rm -rf 删除 cd /文件名/.../ 进入某个文件夹下 注意要逐层 ...

  6. ajax 简单例子

    Html 代码: <html> <body> <div id="myDiv"><h3>Let AJAX change this te ...

  7. N种自动化测试框架(包含自动化和性能,总有一款适合你)

    不知不觉,分享的框架已经6个了(准确说应该是4个),仅仅是接口的. 这些框架都是最基础的框架,需要根据实际使用场景进行完善,大家就当练手实践吧. 不需要写代码的自动化框架 JMeter + Ant+ ...

  8. 水晶报表 VS2010 应用

    VS.NET2010水晶报表安装部署[VS2010]   欢迎C#高手加盟QQ群:9340166 水晶报表VS2010版IDE安装标准版SAP Crystal Reports, version for ...

  9. C语言常用库函数实现

    1.memcpy函数 memcpy 函数用于 把资源内存(src所指向的内存区域) 拷贝到目标内存(dest所指向的内存区域):拷贝多少个?有一个size变量控制拷贝的字节数: 函数原型:void * ...

  10. mysql小结(了解)

    Mysql总结 1.数据库的概念 """ 数据库:库(文件夹).表(表结构文件.表数据文件(索引结构)).字段(数据的描述).记录(数据的本体) 分类:效率问题(内存大于 ...