Skip to main content
Help us improve Python packaging – donate today!

Don't run "curl | sh" again. Use "curl | shed" to verify scripts before running.

Project Description

shed - the sh editor

Don’t run curl | sh again. Use curl | shed to verify scripts before running.

Usage

Replace sh with shed in any pipe-sh commands you run. shed will:

  • save the piped script to a temp file
  • open the temp file in $SHED_EDITOR or $EDITOR to let you view and modify the script
  • ask you if you still want to run the script, preserving any changes you made

Installation

This is a Python 3 script, so use pip3 to install:

pip3 install shed_sh

Note the spelling: shed_sh is different from shed.

After this, run shed or bashed from your terminal to verify it’s installed properly.

Examples

Piping to sh

Take your questionable curl-pipe-sh or wget-pipe-sh command

curl -L https://npmjs.org/install.sh | sh
wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh

and use shed to view and edit your script before running it:

curl -L https://npmjs.org/install.sh | shed
wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | shed

Piping to bash

bashed protects your bash shell, too: take this unknown script

wget -q -O - https://fixubuntu.com/fixubuntu.sh | bash

and verify the contents before running:

wget -q -O - https://fixubuntu.com/fixubuntu.sh | bashed

Config

Set your preferred editor:

export SHED_EDITOR=vim

shed also checks $EDITOR, then falls back to nano, vim, vi, and emacs in order.

Contributions

Bug reports, fixes, or features? Feel free to open an issue or pull request any time. You can also tweet me at [@mplewis](http://twitter.com/mplewis) or email me at matt@mplewis.com.

License

Copyright (c) 2014 Matthew Lewis. Licensed under the MIT License.

Release history Release notifications

This version
History Node

1.0.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
shed_sh-1.0.0-py3-none-any.whl (5.8 kB) Copy SHA256 hash SHA256 Wheel 3.4 Jan 2, 2015
shed_sh-1.0.0.tar.gz (3.7 kB) Copy SHA256 hash SHA256 Source None Jan 2, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page