iterpipes 0.4

This is a beta release. The library may be changed significantly.

Release Date:


Python is a good choice for many software tools, but it lacks clarity and simplicity of command shells when it comes to running command pipelines from scripts. The standard subprocess module provides basic inter-processing tools, but it requires lots of lines to express a single shell line.

iterpipes is trying to overcome this limitation by representing a shell command pipeline as a function over iterables, similar to functions from the standard itertools module.


  • Enables piping infinite streams through shell pipelines in Python
  • Represents a shell command as an ordinary function from stdin iterable to stdout iterable
  • Uses standard interprocessing modules: subprocess, threading
  • Allows doing things marked as red warning boxes at the subprocess help page
  • Only 300 lines of code with docstrings

Getting Started

  1. Download and install iterpipes
  2. Read the Introduction
  3. Get familiar with the iterpipes API

The simplest way to install iterpipes is via pip or easy_install:

$ pip install iterpipes

Packages for Arch Linux and FreeBSD are also available.

Reviews and Discussions

Major reviews:

Small reviews and discussions:

Feedback and Development

Please report any bugs or suggestions to the issue tracker.

Get the source code from the Mercurial repository:

$ hg clone

Indices and Tables

Table Of Contents

Next topic


This Page