Skip to content
Builds menu (via dialog) from your ~/.ssh/config
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE.md
README.md
sshto

README.md

sshto

Small bash script that builds a menu (via dialog) from your ~/.ssh/config.
screeenshot
Allows you to connect to your servers or run commands from menu. Available commands:

cmdlist=(
    #Command#  #Description#
    "ls  -la"  "List Files."
    "free -m"  "Show free ram."
    "df  -ih"  "Show free inodes."
    "df   -h"  "Show free disk space."
    "top -n1"  "Show summary system information."
    ""         ""
    "info"     "Full system info."
    "copy"     "Copy selected file or dir."
    "sshkey"   "Add my ssh key to this server."
    "alias"    "Add my usefull aliases to this server."
)

screeenshot
Your commands can be easily added to this list.
First collumn - command, second - description.
Empty string is used as a delimiter.
You can quick jump to the selected server via CONNECT button.
When you done press ^D it'll bring you back to sshto commands section.

Hosts description needs to be added like this:

Host server1 #DESCRIPTION
HostName 192.168.0.1
Port 22
User admin

Start menu delimiters '---{ TEXT }---' can be added like this:

#Host DUMMY #TEXT#

~/.ssh/config example:

#Host DUMMY #Rybinsk#

Host server1 #First server
HostName 192.168.0.1
Port 22
User admin

Host server2 #Second server
HostName 192.168.0.2
Port 22
User user

Host server3 #Third server
HostName 192.168.0.3
Port 22
User loser

#Host DUMMY #Moscow#

Host server1 #First server
HostName 192.168.1.1
Port 22
User admin

Host server2 #Second server
HostName 192.168.1.2
Port 22
User user

Host server3 #Third server
HostName 192.168.1.3
Port 22
User loser

Script greps multiple config* files in ~/.ssh dir.
Hosts configs can be split to multiple files and used with Include directive, example:

Include config_moscow
Include config_rybinsk
You can’t perform that action at this time.