如何让你的程序支持管道输入

什么叫支持管道输入

cmd1 | cmd2 | cmd3

管道符号 | 是怎么做的输入输出

其实很简单,管道是通过stdin和stdout来传给程序的。

说白了,管道符号|就是把cmd1的stdout弄成cm2的stdin

怎么支持管道输入

那就更简单了,支持从stdin读取内容,就支持管道输入了;

同样,支持往stdout输出内容,也就支持管道输出了。

能举个例子吗

#include<iostream>
using namespace std;

int main(int argc, char \*argv[])
{
    string s;

    while (cin >> s)
        cout << "hello " << s << endl;

    return 0;
}

可以演示一下效果吗

[root@CentOS ~]# ls redis-3.0.7 | ./a.out 
hello 00-RELEASENOTES
hello BUGS
hello CONTRIBUTING
hello COPYING
hello deps
hello INSTALL
hello Makefile
hello MANIFESTO
hello README
hello redis.conf
hello runtest
hello runtest-cluster
hello runtest-sentinel
hello sentinel.conf
hello src
hello tests
hello utils

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java架构师历程

CentOS7下RabbitMQ服务安装配置

RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erla...

18230
来自专栏lonelydawn的前端猿区

共享网页聊天室的设计与实现

? 系统概述 技术结构 webpack 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当...

45350
来自专栏博客园迁移

jenkins自动部署应用到tomcat中,编译后shell脚本的简单示例

1.先配置好jenkins需要用到的其他外部组件  jdk,maven,git/svn

23930
来自专栏Hadoop实操

如何在DELL R730服务器上使用U盘安装linux操作系统

1.1K30
来自专栏跟着阿笨一起玩NET

用SoapUI进行Webservice的性能压力测试

转载:http://www.cnblogs.com/fnng/archive/2011/08/11/2135440.html

93210
来自专栏游戏杂谈

AIR打开系统文件目录

在写webgame的资源管理器的时候,想加一个功能,就是在解析版本xml时,想打开目录查看里面的文件。

14610
来自专栏架构师之路

线上操作与线上问题排查实战

技术同学需要经常登录线上的服务器进行操作,58到家架构部/运维部/58速运技术部,联合进行了一次线上操作与线上问题排查实战演练,同学们反馈有收获,特将实战演练的...

32540
来自专栏zhangdd.com

zabbix安装-apache+php+mysql环境zabbix3.2安装文档

zabbix是目前应用比较广泛的是c/s架构监控解决方案,本文从实战的角度教你zabbix在centos7系统下安装配置。

12130
来自专栏weixuqin 的专栏

一些杂想(服务器篇)

7520
来自专栏木子昭的博客

nodejs爬虫获取漫威超级英雄电影海报

17530

扫码关注云+社区

领取腾讯云代金券