Skip to main content

Write a temporary file and pass it to a program

Project description

shell-piper

Shell-piper is a commandline program made to write to a temporary file with your editor and pass that file's contents to an external program through various methods.

Installation

The recommended way to install shell-piper is through pipx (pipx install shell-piper). Arch users can also install shell-piper from the AUR.

You can also clone this repository and build shell-piper manually:

git clone 'https://github.com/Mrfiregem/shell-piper.git'
cd shell-piper
flit install

Quickstart

Stdin Mode

Copy and paste text into your editor and modify it with awk:

shellpiper -- awk -F $'\t' '{ print $2 }'

Argument Mode

Convert pasted html into markdown with pandoc:

shellpiper --type argument -- pandoc '{piper:file}' --from html -o converted.md

The argument {piper:file} will be expanded by shell-piper to the full path of the temporary file. If this argument is not present, the file path will be appended as the last argument.

Expand Mode

Pass a list of urls to download with youtube-dl, with each line as an argument:

shellpiper -t x youtube-dl

Usage

usage: shellpiper [-h] [-v] [-V] [-t TYPE] [-k] program [args ...]

Write a temporary file and pass it to a program

positional arguments:
  program               The program to pass your file to
  args                  Arguments to pass to the program

options:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -V, --verbose         Show debug messages
  -t TYPE, --type TYPE  How the file will be given to the program
  -k, --keep-empty      Don't remove empty lines when using '--type expand'

Use '--' to prevent command flags to the right of it being parsed by piper.

The '--type' flag can take values 'stdin' (default), 'argument', or 'expand',
or the letters 's', 'a', or 'x', respectively. This determines how the file is
passed to your program by shellpiper.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shell-piper-0.7.2.tar.gz (15.8 kB view hashes)

Uploaded Source

Built Distribution

shell_piper-0.7.2-py3-none-any.whl (17.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page