DiSh - A poor man's distributed shell

SYNOPSIS

DiSh is a very basic implementation of a distributed shell system. A distributed shell lets you run the same command on multiple remote machines, either incrementally or in parallel. This implementation uses SSH to access each machine, so it is recommended that you have SSH keys setup to allow a passwordless login so you can avoid all the redundant typing.

DOWNLOAD

DiSh Source

STATUS

DiSh is small, but fully-functional. Patches (fixes, improvements, features) are welcome.

EXAMPLE USAGE

Start Apache on all servers

$ ./dish.sh sudo /etc/rc.d/httpd start
-----< dev1.zeroflux.org >-------------------------------------------------
:: Starting Apache                                                   [DONE] 
Connection to dev1.zeroflux.org closed.

-----< dev2.zeroflux.org >-------------------------------------------------
:: Starting Apache                                                   [DONE] 
Connection to dev2.zeroflux.org closed.

-----< dev3.zeroflux.org >-------------------------------------------------
:: Starting Apache                                                   [DONE] 
Connection to dev3.zeroflux.org closed.

Copy a file to all servers

$ ./dish.sh -l scp myfile.txt %S:dir/
-----< dev1.zeroflux.org >-------------------------------------------------
myfile.txt                                    100%    0     0.0KB/s   00:00

-----< dev2.zeroflux.org >-------------------------------------------------
myfile.txt                                    100%    0     0.0KB/s   00:00

-----< dev3.zeroflux.org >-------------------------------------------------
myfile.txt                                    100%    0     0.0KB/s   00:00

AUTHOR

Judd Vinet <jvinet@zeroflux.org>