| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
A ClusterSSH utility (like cssh) for iTerm2.
Opens an iTerm2 Window and connects over ssh to each host specified in the command arguments in a split pane session, with any input typed or pasted in any pane replicated to all panes through iTerm2's 'broadcast' feature.
Installing first time round will take a while - pyobjc is a required package and it compiles a lot of things as it installs. Later installs and upgrades will be much faster as the packages will be cached.
usage: csshi [-h] [-d] [-k] [-c] [-n] [-l USERNAME] [-p PORT] [-J JUMPHOST]
[-s SLEEP] [-o OPTIONS] [-b BINARY] [-P PROFILE] [-C COLUMNS |
-R ROWS]
(-L | destination ...)
Run multiple ssh connections concurrently in an iTerm2 terminal.
positional arguments:
destination [user@]host[:port] ssh connection specification. NB:
Square brackets MUST be used around IPv6 IP adresses
options:
-h, --help show this help message and exit
-d, --debug Turn on debugging
-k, --kill-inactive Don't create spacer panes and kill inactive panes
-c, --caffeinate Try to keep the Mac awake
-n, --no-broadcast Don't enable input broadcast
-l, --username USERNAME
Login username, overridden per-host by specifying
'user@host'
-p, --port PORT ssh server port, overridden per-host by specifying
'host:port'
-J, --jump JUMPHOST ProxyJump host specification, like
[user@]jumphost[:port]
-s, --sleep SLEEP Sleep time in seconds between hosts. Defaults to 0
-o, --options OPTIONS
Raw ssh options string, e.g. '-i ~/.ssh/id_ansible'.
Can be specified multiple times.
-b, --binary BINARY SSH binary to use. Defaults to 'ssh'
-P, --profile PROFILE
iTerm2 settings Profile to use for csshi window.
Defaults to your default Profile.
-C, --columns COLUMNS
Maximum number of columns to use.
-R, --rows ROWS Maximum number of rows to use.
-L, --list-sessions Print space-separated list of csshi sessions, one line
per window
If you have a file listing hostnames to connect to, use xargs:
$ cat file_of_hosts | xargs csshi
Some preferences to optimise for shell density if you find yourself opening a lot of terminals in one csshi session:
If you are connecting to large numbers of hosts via a single Jumphost, it's advisable to set up multiplexing for the Jumphost:
https://en.wikibooks.org/wiki/OpenSSH/Cookbook/Multiplexing
Also consider raising MaxConnections on that host - the default on OpenSSH is 10.
Throw a PR over, raise an issue, send me an email.
| Back | FazBrowse Home | New Git URL |